我们一起来读书吧 关注:156贴子:3,319
  • 0回复贴,共1

深入浅出 vuejs 13.3.4

取消只看楼主收藏回复

vm.$mount([elementOrSelector])
参数:{Element|string}[elementOrSelector]
返回值:vm,实例自身;
用法:如果Vue.js实例在实例化时没有收到el选项,则它处于“未挂载”状态,没有关联的DOM元素。可以使用vm.$mount手动挂载一个未挂载的实例。
1、完整版vm.$mount的实现原理
完整版$mount通过函数劫持扩展功能:优先使用用户提供的render函数;若无则获取模板(来自template选项或el元素),编译成渲染函数并缓存以提升性能,最后调用运行时版本的$mount。
2、只包含运行时版本vm.$mount的实现原理
运行时$mount方法的核心功能是通过mountComponent函数将 Vue 实例挂载到 DOM 元素上。它会开启一个Watcher来持续观察渲染函数中依赖的所有数据,当数据变化时自动触发重新渲染,这个过程会持续到实例被销毁。


IP属地:北京1楼2025-12-08 19:26回复