Vue 两个版本的区别和使用方法

149 阅读2分钟

一、两个版本对应的文件名

  • 完整版 文件名为vue.js

  • 只包含运行时版(非完整版),文件名为vue.runtime.js

在 NPM 包的 dist/ 目录你将会找到很多不同的 Vue.js 构建版本。这里列出了它们之间的差别:

截屏2021-11-30 上午9.39.36.png

两个版本的对比:

截屏2021-11-30 上午9.38.26.png

这两个版本最大的区别在于:完整版含有complier(编译器),而非完整版则没有,因此完整版文件体积比非完整版大了30%左右。

最佳实践:总是使用完整版,然后配合vue-loader和vue文件

思路:

  1. 保证用户体验,用户下载的JS文件体积更小,但只支持h函数
  2. 保证开发体验,开发者可直接在vue文件里写HTML标签,而不写h函数
  3. 脏活让loader做,vue-loader把vue文件里的HTML转为h函数
  • 完整版:同时包含编译器和运行时的版本。
  • 编译器:用来将模板字符串编译成为 JavaScript 渲染函数的代码。
  • 运行时版本:用来创建 Vue 实例、渲染并处理虚拟 DOM 等的代码。基本上就是除去编译器的其它一切。

二、template 和 render 怎么用

template----html的方式做渲染

render----js的方式做渲染

render是一种编译方式,render里有一个函数h,这个h的作用是将单个文件组件进行虚拟DOM的创建,然后再通过render进行解析。h就是createElement()方法

完整版:不用去写render函数,使用template,代码如下:

截屏2021-11-30 上午10.17.53.png

非完整版(运行版):需要render函数,配合单文件组件使用(脚手架搭建的项目默认配置是非完整版),代码如下:

截屏2021-11-30 上午10.24.17.png

总结:使用非完整版,然后配合vue-loadervue单文件组件。

三、如何用 codesandbox.io 写 Vue 代码

CodeSandbox是一个免费的在线代码编辑器,主要聚焦于创建 Web 应用项目。当前已经进化为可以同时支持浏览器端以及服务端的 web 应用。

第一步:点击地址进入codesandbox.io

第二步:注意不要登录,登录之后仅可创建50个项目,不登录创建项目数量不受限制

截屏2021-11-30 上午10.36.21.png

第三步:点击需要创建的项目类型(以vue为例)

截屏2021-11-30 上午10.40.08.png

更改代码,支持实时预览:

截屏2021-11-30 上午10.42.45.png

以上,三步就可以创建一个Vue项目,还可以把创建开发好的项目代码下载到本地:选择左上角的file——然后Export to ZIP