一、组件的核心概念-属性props几种写法
我们的开发都是围绕着
options来的


<template> |
// 用法 |
二、组件的核心概念-事件

<template> |
三、组件的核心概念-插槽

<a-tab-pane key="slot" tab="插槽"> |
<!-- Slot.vue --> |

大属性例子
<!--子组件 bigProps.vue--> |
<!--父组件调用--> |
四、双向绑定和单项数据流并不冲突


五、如何触发组件的更新



六、合理应用计算属性和监听器
6.1 计算属性Computed
- 减少模板中的计算逻辑
- 数据缓存
- 依赖固定的数据类型(响应式数据)
<template> |
6.2 监听watcher
- 更加灵活通用
watcher可以执行任何逻辑,包括函数节流、ajax异步获取数据
<template> |
watcher中使用节流
<template> |
6.3 computed vs watcher
computed能做的,watcher都可以做,反之不行- 能用computed的尽量使用
computed
七、生命周期的应用场景和函数式组件
7.1 生命周期




<template> |
打印顺序
beforeCreate - data - created - beforeMount - render - mounted
7.2 函数式组件
functional:true- 无状态、无实例、没有
this上下文、没有生命周期
// TempVar.js |
// Functional.vue |
// 使用 |
八、Vue指令
8.1 内置指令

<template> |
8.2 自定义指令

<template> |
九、template和jsx
9.1 JSX VS template
Template
- 学习成本低
- 大量内置指令简化开发
- 组件作用域css
- 但灵活性低
JSX
- 总体上很灵活
9.2 以下是jsx写法
// index.vue |
// bigProps |
// Events.vue |
// Props.vue |
// Slot |
十、为什么需要vuex

Vuex运行机制

基本例子
import Vue from 'vue' |
// App.vue |
十一、vuex核心概念和底层原理
11.1 核心概念

11.2 底层原理

简化版本的vuex
import Vue from 'vue' |
十二、vuex最佳实践
12.1 核心概念

12.2 使用常量代替Mutation事件类型

12.3 命名空间
对所有模块开启命名空间

12.4 实践例子
十三、vue-router使用场景
13.1 解决的问题

13.2 使用方式

13.3 例子
|
// App.vue |
// routes.js |
十四、路由的类型及底层原理
路由的类型
Hash模式:无法使用锚点定位History模式:需要后端配合,IE9不兼容,可以使用强制刷新处理
原理
