ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
> 在vue3中可以通过`teleport`这个内置组件将我们封装的组件渲染到指定的元素中,比如渲染到`body`中,这非常适用于一些弹窗组件。 使用`<teleport>`,告诉 Vue “将这个 HTML**传送**到‘**body**’标签下”。 ~~~ app.component('modal-button', { template: ` <button @click="modalOpen = true"> Open full screen modal! (With teleport!) </button> <teleport to="body"> <div v-if="modalOpen" class="modal"> <div> I'm a teleported modal! (My parent is "body") <button @click="modalOpen = false"> Close </button> </div> </div> </teleport> `, data() { return { modalOpen: false } } }) ~~~ 一旦我们单击按钮打开模态框,Vue 将正确地将模态框内容渲染为`body`标签的子级。