资讯专栏INFORMATION COLUMN

Vue独立构建与运行时构建

luodongseu / 2548人阅读

摘要:然而到了,为了支持服务端渲染,编译器不能依赖于,所以必须将编译器和运行时分开。这就形成了独立构建编译器运行时和运行时构建仅运行时。

看了Vue 2.1.7版本的源码, 发现在打包Vue文件的时候, 可以通过不同的配置项打包不同的版本.

根据package.json里面的命令可以看到不同的运行方式.
其中最主要的区别就是在入口文件


是web-runtime-with-compiler.js 还是 web-runtime.js.
这里就是运行时构建与 独立 构建的区别所在

查看里面的源码可以发现

Web-runtime-with-compiler.js 中重载了 web-runtime.js 的$mount()方法, 主要区别在与


对options.template 选项进行了解析 => 成为render 函数, 这个步骤可以理解为编译过程
而运行时构建 对于用webpack + vue-loader 生成的项目来说, 是在预编译阶段就进行了编译, 所以对于vue-cli生成的项目默认是使用运行时构建

由于 Vue.js 1.0 的编译过程需要依赖浏览器的 DOM,所以无法(或者说没有意义)将编译器和运行时分开。因此在 Vue.js 1.0 分发包中,编译器和运行时是打包在一起,都在浏览器端执行。
然而到了 Vue.js 2.0,为了支持服务端渲染(server-side rendering),编译器不能依赖于 DOM,所以必须将编译器和运行时分开。这就形成了独立构建(编译器 + 运行时)和运行时构建(仅运行时)。显而易见,运行时构建要小于独立构建。

http://hcysun.me/2017/03/03/V...
http://blog.csdn.net/zengyong...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/83610.html

相关文章

  • Vue源码探究二】从 $mount 讲起,一起探究Vue的渲染机制

    摘要:的构造函数将自动运行启动函数。我在阅读源码的过程中,发现源码余行,而和模板编译相关的代码,则约有行左右。这个是创建的方法,作为第一个参数传入。最后会返回一个节点。这个时候将赋值为这个节点,挂载完成 mount, 意思为挂载。可以理解为将vue实例(逻辑应用),挂靠在某个dom元素(载体)上的一个过程。 一、创建Vue实例时的渲染过程 上一篇文章我们讲到, 在创建一个vue实例的时候(v...

    LeanCloud 评论0 收藏0
  • [面试专题]Vue.js 2.0 独立构建运行构建的区别

    摘要:独立构建和运行时构建的区别标签空格分隔未分类在使用时,有独立构建和运行时构建两种版本可供选择。运行时构建不包括模板编译,不支持选项。这就形成了独立构建编译器运行时和运行时构建仅运行时。 Vue.js 2.0 独立构建和运行时构建的区别 标签(空格分隔): 未分类 在使用 Vue.js 2.0 时,有独立构建(standalone)和运行时构建(runtime-only)两种版本可供选...

    李义 评论0 收藏0
  • [面试专题]Vue.js 2.0 独立构建运行构建的区别

    摘要:独立构建和运行时构建的区别标签空格分隔未分类在使用时,有独立构建和运行时构建两种版本可供选择。运行时构建不包括模板编译,不支持选项。这就形成了独立构建编译器运行时和运行时构建仅运行时。 Vue.js 2.0 独立构建和运行时构建的区别 标签(空格分隔): 未分类 在使用 Vue.js 2.0 时,有独立构建(standalone)和运行时构建(runtime-only)两种版本可供选...

    svtter 评论0 收藏0
  • [面试专题]Vue.js 2.0 独立构建运行构建的区别

    摘要:独立构建和运行时构建的区别标签空格分隔未分类在使用时,有独立构建和运行时构建两种版本可供选择。运行时构建不包括模板编译,不支持选项。这就形成了独立构建编译器运行时和运行时构建仅运行时。 Vue.js 2.0 独立构建和运行时构建的区别 标签(空格分隔): 未分类 在使用 Vue.js 2.0 时,有独立构建(standalone)和运行时构建(runtime-only)两种版本可供选...

    freewolf 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<