请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

编译

1、如果在new Vue 写成render方式 编译过程什么时候执行
2、最后通过codegen生成的代码 是通过VNode 生成dom树 然后生成页面的?

正在回答 回答被采纳积分+3

1回答

ustbhuangyi 2019-01-31 23:25:06

1. 如果直接手写 render 函数,是会跳过编译步骤的。
2. codegen 生成的代码实际上就是 render 函数的代码,然后再通过 new Function 转换成 render 函数,render 函数会返回一个 VNode 树,然后再 patch 过程中生成 DOM 树渲染到页面

0 回复 有任何疑惑可以回复我~
  • 提问者 前端攻城 #1
    如果写成render 跳过编译 那么组件中的template 怎么编译成DOM 难道不需要走编译过程吗
    回复 有任何疑惑可以回复我~ 2019-01-31 23:52:53
  • ustbhuangyi 回复 提问者 前端攻城 #2
    你既然写了 render 函数,就没必要写 template 了啊。
    难道你想问我们平时开发 .vue 文件的时候写是 template,是如何被编译成 render 函数的?
    如果是这个问题,这个编译是发生在 webpack 编译阶段,vue-loader 负责编译的。
    回复 有任何疑惑可以回复我~ 2019-02-01 00:55:58
  • 提问者 前端攻城 回复 ustbhuangyi #3
    嗯 就是这个 明白了 非常感谢
    回复 有任何疑惑可以回复我~ 2019-02-01 18:26:13

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信