美文网首页
惊喜!Vue3新组件Teleport 传送门实践

惊喜!Vue3新组件Teleport 传送门实践

作者: 风凌摆渡人 | 来源:发表于2023-05-05 16:43 被阅读0次

背景

公司要开发一个新项目,在富文本预留的dom元素上加载对应的vue组件。后端返回的是html片段。根据html片段里面渲染不同的vue组件,来实现交互。

思路1

后端返回html,直接放入vue的标签,相当于获取到了vue的template,然后new一个vue的实例。通过混入vue组件的方式来渲染。

缺点:

1、因为是不同的vue实例,组件无法直接和外部通讯,需额外注册bus总线来实现内外部通讯
2、要求后端懂html,而且用后端代码操作html,恶心度极高

思路2

每个组件通过new vue的实例,然后通过挂载的方式,挂载上去
缺点:
1、每个组件之间的通讯变的异常复杂
2、vue3移除了bus总线
最佳实践
vue3的新特性Teleport,通过传送的方式把组件直接放到对应的位置,真香方案,因为是同一个vue对象,组件的传值和emit事件变的非常方便

<Teleport v-for="(itm, inx) in fields" :key="inx" :to="itm.dom">
  <component :is="comps[itm.name]" v-model:value="formData[itm.id]"  :config="itm.config"></component>
</Teleport>

相关文章

  • Vue3新特性:内置组件teleport

    Vue3内置组件teleport 将teleport包裹的元素移动到某个DOM节点下有两个参数to - strin...

  • vue3 Teleport组件

    Teleport,被称为传送门组件,用于提供一种简洁的方式,指定其里面内容的父元素 例如,定义一个模态框,该模态框...

  • vue3 teleport传送门的使用

    定义:可以将组件的DOM元素直接传送到某一位置进行展示。 使用场景:像 modals,toast 等这样的元素,很...

  • Vue3中的Teleport(传送门)

    动画片多啦A梦相信大家很多都看过,而且近几年又出现了相关的电影,作为小编一个男生来说,一直是对里面的静香念念不忘,...

  • VUE3.0 teleport组件

    teleport 组件 也可以说独立组件 绑定

  • Vue3中的teleport节点传送

    Vue3 teleport官方文档地址:https://vuejs.org/guide/built-ins/tel...

  • 九.弹出模态框使用Teleport

    使用Teleport实现一个模态对话框的组件 teleport ,把模板的内容移动到当前组件之外的DOM 中,可以...

  • Teleport组件

    Teleport也被称为传送门组件,用于提供一种简洁的方式,指定其里面内容的父元素 为了方便我将相关内容简记如下图...

  • Teleport组件

    Teleport是个内置组件,它可以将组件内部模板传送到DOM结构外层位置去 使用 一般用于模态框

  • Vue3 新特性 —— teleport 瞬间移动

    官方文档 Teleport | Vue3中文文档[https://www.vue3js.cn/docs/zh/gu...

网友评论

      本文标题:惊喜!Vue3新组件Teleport 传送门实践

      本文链接:https://www.haomeiwen.com/subject/jwkqsdtx.html