我对虚拟DOM的一些思考
最近编写vue插件时我遇到了一个问题:通过引入函数调用,创建虚拟DOM,并且把它转成真实DOM且挂载到body容器中,但当我需要再次把某个组件通过同样的方式挂载到body容器中,(这里暂把第一次创建的虚拟DOM称作旧VNode,第二次创建的称作新VNode)。 原本我是想两个VNode都存在body中,且新VNode排在旧VNode的后面,但在执行新VNode的挂载时却发现body容器中只剩...
最近编写vue插件时我遇到了一个问题:通过引入函数调用,创建虚拟DOM,并且把它转成真实DOM且挂载到body容器中,但当我需要再次把某个组件通过同样的方式挂载到body容器中,(这里暂把第一次创建的虚拟DOM称作旧VNode,第二次创建的称作新VNode)。 原本我是想两个VNode都存在body中,且新VNode排在旧VNode的后面,但在执行新VNode的挂载时却发现body容器中只剩...
仿照element-plus的message消息提醒,自行封装一个简化版的全局message消息提醒 实现功能: 可以选择类型,如success、warning、error 通过vue插件或函数使用 但多次触发消息提示,只有一个消息提示框,目前还没实现多次触发弹出多个提示框 实现代码如下: src/components/Message/index.vue 1...
插件 (Plugins) 是一种能为 Vue 添加全局功能的工具代码。 插件没有严格定义的使用范围,app.use(xxx)就是在使用插件了。 官方已经为我们总结出来了,插件发挥作用的常见场景主要包括以下几种: 通过app.component()和app.directive()注册一到多个全局组件或自定义指令。 通过app.provide()使一个资源可被注入进整个应用 向app.co...
默认插槽假设子组件<son>组件的模版如下: 1234567891011<div class="container"> <header> <h1>头部</h1> </header> <main> <slot></slot> </main...