时间
|
课程主题 |
课程安排 |
第1天 |
Vue.js 核心基础进阶 |
* ref 实战案例
* slot实战案例
* 计算属性
实战案例:计算最终样式
* 过滤器
实战案例:常用的时间、货币
全局过滤器和局部过滤器
基于 date-fns 设计一个 timeFormat
* 自定义指令
实战案例:v-clickoutside - 点击元素外面才会触发的事件
* mixins
实战案例:设计一个 focus
* $set 更新数组和对象
实战案例:表单中数组类新增一行多个表单项,删除一行
* 事件系统
分析@click 绑定的内部核心流程
实战案例:结合 mixin、$emit 和 $parent、$children 设计事件方法:dispatch
和 broadcast
* 自定义插件
实战案例:基于 tiny-cookie 设计一个 cookie 插件,提供 set、get、delete
设计一个 toast 插件 |
综合案例实战
实现复杂的左右布局的列表滚动筛选
|
基于 $attrs + $listeners
动态组件来支撑不同的筛选 |
vue-cli
2 核心解析 |
build 目录的文件解析和插件说明
dev 环境依赖
prod 环境打包流程
分环境配置文件的关系 webpack.dev/prod/test.js |
预编译样式在
vue 开发中的对比实践 |
* 预编译优势是什么
* 常用预编译工具
* 选中 less 的优势
* 在 Vue.js 中的核心配置和应用 |
babel
在 Vue.js 中的核心应用原理 |
* .babelrc VS babel.config.json
的核心配置 presets(env、stage)
* babel7 带来的变化
* babel-loader 的核心配置和原理
* babel 必备的 plugins
* babel-plugin-transform-runtime 的核心原理
* 基于 https://cdn.polyfill.io/v3/ 搭建自主的兼容脚本 |
高效的开发工具 |
* 如何高效调试 Vue.js
* 项目脚手架 vue-cli 介绍和使用
* vue-loader 配置和使用
* 本地服务和代理
* mock 的方案对比 |
第2天 |
webpack 原理和实战 |
* webpack 实战必备
* 核心配置信息
* 分文件配置
* 插件介绍
* 插件开发 |
与服务端交互方式 |
* 跨域处理
* jsonp 设置
* 自定义请求头
* 全局封装 request 方法 |
vue-loader
核心实现细节 |
* template 解析
* css scoped lang 特性解析
* script es6 解析 |
vue
全家桶(总结了很多遍的快速掌握脑图) |
* vuex 的应用实践与设计解析
* vue-router 的应用实践与设计解析
* keep-alive 高级特性和事件 |
多页单页应用的脚手架设计细节与优化 |
* 入口查找细节(自动)
* 打包文件详细解析
* 优化 dev 编译速度
* 优化打包体积 webpack-bundle-analyzer VS webpack-jarvis
* 拆解 vue 等非业务包
* 单页应用按需加载 |
Vue
核心原理剖析 |
* vue 中内置指令 v-show
源码实现
* vue 中内置指令 v-if 源码实现
* vue 中内置指令 :class 源码实现 |
组件库设计和打包 |
* 父子组件交互
* slider 组件设计案例(子父组件嵌套)
* input-number 组件设计案例
* 带 mixins 的组件设计
* 对比 vue2 element 等开源组件库案例解析
* vue 事件系统的设计
* vue slot 详解
* vue directive 编写实战
* mixins 的应用场景分解实战 |