vue 深入响应式原理 注意事项

对vue.js 的响应式的原理的理解,有助于更加灵活的使用vue,和避开一些坑

所以了解其运行原理十分重要

vue 运行机制使用object.definePorperty 将变化的data ,转化为getter/setter.

因为使用了es5的特性, 也就是Vue不支持IE8及其以下版本的浏览器    的原因。


变化检测

1·(Object.observe的废弃),Vue不能检测对象属性的添加或删除,因此属性必须在data对象上,但是可以使用Vue.set(Object,key,value) 来将响应属性添加到对象上 (vm.$set 实例方法Vue.set全局方法)。

2.使用(Object.assign() 或者_.extend())方法添加属性,不会触发更新,这时3建议使用oldobject=Object.assign({},oldobject,{key1:value1,key2:value2})

3.Vue不允许动态添加 根级响应式属性,所有初始实例必须声明(空值也需要

4.在数据变化之后立即使用 vm.$nextTick(calllback) 实现在Dom更新后操作

你可能感兴趣的:(vue)