Vue有两个不同的版本,一个是Vue完整版(vue.js)和Vue非完整版(vue.runtime.js),接下来简单的介绍一下两个版本的区别和使用方法。
这里引用一张图片,对比两个版本的区别。
总结下图片信息:
- 完整版:
vue.js包含编译器(compiler),可用template把视图上的HTML转化为DOM节点、转化成HTML内容。但缺点很明显,因为这个编译器的存在,代码体积多40%。 - 非完整版:
vue.runtime.js非完整版中的html只是字符串,且不能从html中获取视图,但是可以结合webpack,通过webpack内的vue-loader,将其转成h()函数,用户下载的js文件体积变小了。
// 不需要编译器
new Vue({
render (h) {
return h('div', this.hi)
}
})
// 需要编译器
new Vue({
template: '<div>{{ hi }}</div>'
})
使用codesandbox.io写Vue代码
- 进入官网
- 点击 "Create a Sandbox, it's free"
- 选择 "Vue"
三步就可以创建一个Vue项目!还可以把创建开发好的项目代码下载到本地:选择左上角的file——然后Export to ZIP
总结
虽然有两个版本,但现在前端基本是不会用完整版的,平时使用默认都是代码体积小的非完整版,因为编译器的脏活交给vue-loader去做了。
选择非完整版的理由如下:
1.保证用户体验,用户下载的JS文件体积更小,但只支持h函数 (内置的h函数,最好用h)
2.保证开发体验,开发者可直接在vue文件里写HTML标签,而不写 h函数
3.活让loader做,vue-loader 会把vue文件里的HTML转为h函数,这样我们就不用写太多麻烦的 h函数就可做到和完整版一样的事,还更节约文件大小,提升用户体验。\
vscode用命令安装
安装:yarn global add @vue/cli //下载前设置当前所在路径
创建:vue create vue-demo-1