Mixin
官方文档
Mixin 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能。一个 mixin 对象可以包含任意组件选项。当组件使用 mixin 对象时,所有 mixin 对象的选项将被“混合”进入该组件本身的选项。
Mixin容易产生冲突,不方便维护,Vue3中更推荐使用composition API代替mixin
自定义指令
Teleport
官方文档
将组件内的一部分移动到组件外的位置
app.component('parent-component', {
template: `
<h2>This is a parent component</h2>
<teleport to="#endofbody">
<child-component name="John" />
</teleport>
`
})
render()
官方文档
template可以用render函数代替,render函数生成虚拟DOM
插件plugin
官方文档
插件是自包含的代码,通常向 Vue 添加全局级功能。它可以是公开 install() 方法的 object,也可以是 function
插件的功能范围没有严格的限制——一般有下面几种:
- 添加全局方法或者 property。如:vue-custom-element
- 添加全局资源:指令/过渡等。如:vue-touch)
- 通过全局 mixin 来添加一些组件选项。(如vue-router)
- 添加全局实例方法,通过把它们添加到 config.globalProperties 上实现。
- 一个库,提供自己的 API,同时提供上面提到的一个或多个功能。