采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
0:48秒讲runtime-only版本没有这块mount的逻辑,这块逻辑是给runtime-only复用的我没有太听明白。entry-runtime和entry-runtime-with-compiler不都是引用的import Vue from './runtime/index’吗,为什么还要重新定义一遍呢。
runtime + compiler 版本之所以要重新定义 $mount 方法,是因为它要先执行一遍把组件对象中可能定义的 template 编译生成 render 函数的过程。而 runtime-only 版本只支持在组件对象中定义 render 函数。也就是说 runtime + compiler 版本的 $mount 会多做一步编译模板,后面的流程都一样的,所以可以复用后面的 mount 逻辑。
非常感谢!
老师,请问一下,我们在平常使用脚手架开发的过程中, 也可以定义 el 或者 template 挂载, 是因为 webpack 帮我们做了离线编译 生成了render函数吗,离线编译的过程 是不是 可以理解为开发环境的 npm run dev 呢?
你平时开发应该是挂载到某个节点上吧,template 属性的话如果不是 runtime-compiler 版本的话是不行的。至于 .vue 文件你可以写 template 是因为 .vue 文件会经过 vue-loader 插件在 webpack 编译的过程中处理,编译生成 render 函数, webpack 编译会发生在你执行 npm run dev 后。
登录后可查看更多问答,登录/注册
全方位讲解 Vue.js 源码,进阶高级工程师
3.1k 4
1.6k 20
1.3k 14
1.3k 12
2.3k 12