全局配置api-写在main.js里面
1 .可以取消所有日志和警告 Vue.config.silent=true
2 .自定义合并策略和混入有关 Vue.config.optionMergeStrategies.methods
3 .是否开启工具检查代码 Vue.config.devtools = true 是否允许 vue-devtools检查代码
4 .错误检查参数 Vue.config.errorHandler = function(err, vm){} 制定组件的渲染和观察期间捕获错误的处理函数
5 .是否忽略自定义组件 Vue.config.ignoredElements = ['my-custom-web-component','another-web-component']
6 .给v-on自定义键位别名 Vue.config.keyCodes
7 .是否开启组件性能追踪
8 .阻止启动时生成生产提示。
全局工具函数
1 .Vue.extend():创建全局组件
2 .Vue.nextTick():更新dom循环结束之后执行的回调,想要保证在视图更新之后再次操作某个dom,那就就可以在数据改变之后底部调用this.nextTrick()函数来保证接下来的任何操作都是在视图是基于上面数据渲染出来的最新视图。为了在数据变化之后等待Vue完成更新DOM,可以在数据变化之后立即使用Vue.nextTrick(),这样回调函数在DOM更新完成之后就会被调用
3 .Vue.set():向响应式对象添加一个属性,并确保这个新属性同样是响应式的,且触发视图更新。
4 .Vue.delete():和上面是相反的操作
5 .Vue.directive()注册全局指令
6 .Vue.filter()注册全局过滤器
7 .Vue.component()注册或者获取全局组件
8 .Vue.use()安装后使用插件
9 .Vue.minxin:全局注册混入,这个混入将影响注册之后所有创建的每个实例。
10 .Vue.compile() 在render函数中编译模板字符串。
数据有关的api
1 .data:this.开头的属性是不会被Vue实例代理,因为他们可能和Vue内置的属性,api方法冲突。this.el:可以返回这个组件挂载的dom实例,具体的使用的时候,如果实例化时存在这个选项,实例将立即进入编译过程,否则,需要显示调用this.router:在程序内部可以用来访问当前路由
10 .this.$routers: 在程序内部访问路由器
生命周期函数
1 .created:实例创建完即刻调用。此时,数据观测,属性和方法的运算,watch,event事件回调都已基本完成。一般在这个时候进行一些初始化的数据操作。比如进行ajax请求啥的
2 .beforeMount:相关render函数首次被调用。但是这个钩子函数在服务器端渲染期间不能被调用
3 .mounted:el被新创建的vm.nextTrick
4 .beforeUpdate:数据更新之前调用,发生在虚拟dom打补丁之前,适合在更新之前访问现有的DOM,比如手动移除已添加的事件监听。但是之前都没用过这个东西。
5 .updated:由于数据更改导致虚拟dom重新渲染和打补丁之后,在这个之后会调用这个函数。现在可以执行依赖于这个dom的操作。值得注意的是,这个函数钩子是不会保证所有的子组件也会重新渲染,如果希望等到整个视图都被重绘完毕,可以使用this.$nextTrick函数替换掉updated.服务端渲染时不能使用
6 .actived:keep-alive组件被激活的时候调用
7 .deactived:keep-alive组件被停用的时候调用
8 .destroyed:Vue实例销毁的时候调用。调用后,Vue实例指示的所有东西都会解绑,所有的事件监听器都会被移除,所有的子实例也会被销毁。
9 .errorCaptured:类似react的边界错误检测函数
资源
1 .directives
2 .filters
3 .components
选项/组合
1 .parent:指定已创建的实例之父实例,在两者之间机那里父子管子。子实例可以使用this.$parent访问父实例,子实例被推入父实例的¥children数组中。
2 .mixins:
3 .extends:
4 .provide/inject:
5 .
其他
实例属性
1 .this.props:当前组件收到的props对象
4 .this.children
6 .this.el:vue使用的根dom元素
8 .this.slots:当前的插槽分发的内容
10 .this.refs:一个对象持有注册ref特性的所有dom元素和组件实例
12 .this.attr:包含了父作用域种不作为props被识别的特性绑定
14 .this.listener:包含了副作用域中的事件监听器。
实例方法/数据
1 .this.set:
3 .this.$delete:
4 .一堆全局方法的别名
实例方法/事件
1 .熟悉这些东西,可以写自定义的事件或者方法
2 .this.emit:触发自定义事件,附加的参数都会传递给监视器回调
4 .this.off:移除自定义事件的监听器
实例方法/生命周期
1 .this.mount手动挂载一个未挂载的实例
2 .this.foreceUpdate():迫使Vue实例重新渲染,注意它仅仅影响实例本身和插入插槽的子组件,而不不是所有的子组件
3 .this.$nextTick:将回调延迟到更新循环之后执行。在修改数据之后立即使用它,然后等待dom更新。
4 .完全销毁一个实例:清理他与其他实例的连接,解绑他的全部指令以及事件监听器,此事件会触发beforeDestory和destroyed的钩子
特殊特性
key
1 .主要用在虚拟dom算法中,识别新旧vnodes,使用key,他会基于key的变化重新排列元素顺序,并且移除key不存在的元素
2 .有相同父元素的子元素必须要有独特的key,重复的key会造成渲染错误,这个使用在v-for里面
3 .强制的替换元素或者组件,而不是重复的使用它。比如完整的触发组件的生命周期钩子,触发过渡的时候。
4 .类似于自己加了个watch函数
ref
1 .用来给元素或子组件注册引用信息。他会出现在父组件的refs,这时他们还不存在,refs不是响应式的,不能在模板中做数据绑定。v-bind:ref="ref"这个是错误的
is
1 .使用动态组件且基于DOM内模板的限制
2 .动态替换组件,table写的组件
指令
1 .v-html:更新元素的innerHTML.在单文件组件里面,scoped的样式不会应用在v-html内部,可以使用一个全局的style元素来实现
2 .