安装:
用@vue/cli
npm install -g @vue/cli
# 或
yarn global add @vue/cli
# 完成后检查版本
vue --version
# 创建一个名为hello-world的目录
vue create hello-world
#根据需要完成相应配置
# 进入目录
cd hello-world
# 开启webpack-dev-serve
yarn serve
版本区别
vue 完整版 | vue 非完整版(runtime) | 评价 | |
---|---|---|---|
特点 | 有编译器(compiler) | 没有编译器 | compiler占约40%的体积 |
视图 | 写在HTML里或template里 | 写在render函数里,用h来创建 | 使用h来完成渲染 |
cdn引入 | vue.js | vue.runtime.js | 生产环境后缀名为.min.js |
webpack引入 | 需要额外配置alias | 默认使用此版 | 配置详情官方文档 |
@vue/cli引入 | 需要额外配置 | 默认使用此版 | 配置详情官方文档 |
总结:一般都是使用非完整版,然后配合vue-loader和vue文件。
- 非完整版保证用户体验,使得用户下载的JS文件体积更小,但只支持h函数
- 因为有vue-loader可以保证开发体验,使得开发者直接在vue文件里写HTML标签
- vue-loader会将vue里的HTML转化为h函数
template和render用法
// 需要编译器(完整版)
new Vue({
template: '<div>{{ hi }}</div>'
})
// 不需要编译器(非完整版)
new Vue({
render (h) {
return h('div', this.hi)
}
})
// 非完整版在webpack的Vue Loader,
// 它允许你以一种名为单文件组件 (SFCs)的格式撰写 Vue 组件
import Demo from './Demo.vue'
new Vue({
render(h){
return h(Demo)
}
})
Vue实例
Vue实例就如同jQuery实例,封装了DOM的所有操作,封装了data的所有操作。
然后就可以操作DOM了,就像监听事件,改变DOM,操作data,对data进行增删改查。
Vue实例没有封装ajax,需要使用axios的ajax功能。
使用codesandbox.io写Vue的代码:
进入官网,点击右上角的Create Sandbox,选择vue,进入界面,即可在线编辑实时预览。
如何将项目下载到本地:
点击左上角的File,选择Export to ZIP,再到本地目录里解压缩即可。
SEO:
SEO(Search Engine Optimization),中文:搜索引擎优化。
搜索引擎在做的事情,可以简单的理解为它就是在不停地curl,它根据curl得到的结果猜测页面的内容。
SEO不友好:
如果页面都是用JS创建的,那么浏览器在curl的时候就会找不到信息,如用直接用vue-loader写出来的页面,浏览器就会找不到信息。这样的情况称为SEO不友好。
SEO友好:
怎样让不友好变成友好:
事先把title,description,keyword,h1,a写好即可,在里面加入我们想要被搜索到的信息,那么浏览器curl的时候就能获取到页面信息,就是SEO友好了。