前言
本文章结合VUE核心技术-尚硅谷的17-34集做的归纳总结。
Vue Devtools
安装浏览器的Vue插件可以很方便 Debug Vue 下载地址
使用Chrome内核的浏览器打开 crx 文件就可以自动安装插件到浏览器上了
安装完成就可以在浏览器上找到插件
我们打开一个用 Vue 开发的网页,然后按 F12 进入控制台
控制台就会多出一个 Vue 的标签
创建 Vue 项目
安装步骤 (先确保电脑安装了 node.js 或者 yarn)
- 打开命令行 输入
npm install -g vue-cli
全局安装 vue-cli- 跳转到项目路径下输入
vue init webpack vue_demo
使用 webpack 打包方式初始化 vue-cli- 这个时候会需要输入一些选项来配置项目,根据需求配置即可。
- 操作完成之后会在目录下多出 vue_demo 文件夹,输入
cd vue_demo
跳转到文件夹- 输入
npm install
安装工程插件- 输入
npm run dev
开启服务器用于本地访问- 在浏览器中输入 http://localhost:8080/ 就可以访问到 vue-cli 搭建的初始网页
认识 Vue Cli
完成项目创建之后,项目路径下会有如下的文件
进入config文件夹,打开 index.js 可以进行一些启动配置
键入src文件夹,可以看到如下文件
main.js 入口函数 和 外部的 index.html 照相呼应。
这里填入的el元素来自于 index.html 的元素
同时引用 App.vue 进行组件注册
App.vue 是vue的模板文件包含三个模块
templete
script
style
通过引入外部组件就可以实现自定义的HTML标签
项目打包与发布
项目开发完之后执行
npm run build
会读取build文件夹中的配置
最后生成一个完整的页面存放在 dist 目录下
打包完成的网页构建服务器才可以访问。(主要原因是资源路径都是通过根目录索引,没有服务器站点无法获取正确的根目录 解决方案)
搭建服务器有很多方法
- npm 静态服务器
- npm 安装 serve 模块
npm install -g serve
- 然后再dist上层目录执行
serve dist
- 浏览器输入 localhsot:5000 访问
- vscode liveserver 静态服务器
- 安装vscode liveserver 插件
- 去到 dist 根目录,然后右键
Open with Code
- 打开html文件点击状态栏上的 Go Live 按钮就可以自动打开网页
- 动态服务器 - 不再赘述
- Tomcat
- Apacahe
- Ngnix
Apache&Ngnix 可以安装 phpStudy 或者 wamp 快速配置服务器环境
ESlint 代码检查
ESlint 工具可以再发布之前检查代码是否符合编写规范
如果不符合规范就会在相应位置报错。
可以再 .eslintignore 下配置ESlint的检查范围
评论 - 案例制作
这里通过案例介绍了网页组件化的思想。
开干之前我们应该先设计好静态页面,确定网站的布局。
然后根据静态页面拆分出需要用到的组件。
拆分出组件之后就可以对需要用到的数据进行分类。
通过在组件上定义 props 可以实现组件传值,完成组件与组件之间的通信
传值也很简单,直接绑定到组件的属性上即可
当然后面有 Vuex 可以作为全局的数据管理器,通信更简单。
todoList - 案例制作
同样地这里也是先准备好静态页面,再对页面进行组件划分
然后创建相应组件的 vue 文件引入到 app.vue 当中
css也要分组件管理好
映射了HTML标签之后,可以根据大小写切分出对应的标签
<=>
通过
@mouseenter
@mouseleave
可以监听鼠标是否在元素上,实现颜色的变化
这个实现效果类似于 CSS 的 hover 效果
通过 localstorage 可以将一些数据临时保存在浏览器的 localstorage 缓存中,只要网页不清空历史数据,就可以读取缓存将数据保存在本地。
PubSub.js 组件通信
安装 PubSub.js 来实现事件全局注册调用
原理就是 观察者模式
通过注册事件和触发事件来达到满足特定条件才执行事件函数
这样就无须考虑父子层级的问题
Slot 组件通信
和 Qt 的槽函数基本能一致
需要在子组件注册槽函数
然后再父组件中触发槽函数完成操作参考第9期文章
localstroage 存储优化
可以将部分js代码拆分成单独的js库
在 .vue 文件中调用js库来实现相应的函数功能