摘要: vue.js采用数据劫持结合发布-订阅者模式,通过Object.defineProperty()来劫持(重新定义)data中各个属性的setter、getter,在数据变动时,发布消息给订阅者,触发相应的监听回调。 (setter和getter是对象的存储器属性,是一个函数,用来获取和设置值) <! 阅读全文
posted @ 2020-04-07 16:39 2350305682 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 1、我们在不同地方使用同一个组件时,容易产生数据相互干扰。 2、函数可以产生新的作用域,避免变量污染。 阅读全文
posted @ 2020-04-07 16:37 2350305682 阅读(227) 评论(0) 推荐(0) 编辑
摘要: const app=new Vue({ el:'#root', template:'', data:{}, beforeCreate(){ //events、data已经初始化,但是没有绑定响应属性 }, created(){ //data已经绑定响应属性 }, beforeMount(){ //执 阅读全文
posted @ 2020-04-07 16:35 2350305682 阅读(233) 评论(0) 推荐(0) 编辑
摘要: <button @click="addObjB"></button> data:{ obj:{ a:'' } } methods:{ addObjB(){ this.$set(this.obj,'b',111) } } Vue数组、对象改变视图不更新: 第一种情况: 基本数据类型和对象:实例化的时候 阅读全文
posted @ 2020-04-07 16:34 2350305682 阅读(16159) 评论(0) 推荐(0) 编辑
摘要: 1.深度监控,监测所有属性的变化 watch:{ obj:{ handler(newVal,oldVal){ }, deep:true } } 2.监测某个属性的变化: watch:{ 'obj.a':{ handler(newVal,oldVal){ } }, '$route.path'(newV 阅读全文
posted @ 2020-04-07 16:28 2350305682 阅读(4804) 评论(0) 推荐(0) 编辑