[TOC]
## 基础
[**Vue有哪些生命周期?每个钩子函数做了什么**]()
[**Vue传值的方式有哪些**]()
* props/$emit
* $attrs/$listeners
* $parent/$childer
* provide/inject
* eventBus
* vuex
[**v-model 实现原理**]()
`value 改变触发 input 事件,可以用model 定义value 和触发的事件`
例如
~~~jsx
Vue.component('base-checkbox', {
model: {
prop: 'checked', event: 'change'
},
props: {
checked: Boolean
},
template: ` `
})
~~~
使用
~~~jsx
<base-checkbox v-model="lovingVue"></base-checkbox>
~~~
[**keep-alive有哪些钩子及属性**]()
* 钩子
1. activated
2. deactivated
* 属性
1. include
2. exclude