采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
你好
这个想要解释可能需要根据 vue 3 的 render 函数源码实现进行解释了。
以上截图为 vue 3.2.37 的源码 render 函数截图,从该截图中可以看到当 vnode 为 null 时,会执行 unmount(卸载)函数,该函数会卸载 container._vnode (上次挂载的 vnode),从而达到删除旧节点的效果。
就是 因为我们 confirm message 这种 暂时性的组件 所以正好 可以 使用这个(技巧)来实现 刚挂载的节点 再几秒后就销毁时 会找就近挂载的节点进行删除 那我这中间如果又挂载其他组件是不是销毁的不是这个节点了
它的卸载是以 container 对象为核心的卸载,也就是说只需要维护 一个 container 挂载一个 vnode 的场景,那么就不会出现错误销毁的情况。
登录后可查看更多问答,登录/注册
42 种前台常见业务模型, 15 种中台通用组件,成为前端提效高手
724 1
1.9k 3
969 1
1.1k 2
1.0k 1
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号