这段时间用vue.js+webpack做一个单页应用的demo,第一次尝试模块化,技术水平有限,学习不够深入,总是遇到各种问题,所谓前事不忘后事之师,so记录下。
1.ES6匿名函数里面this值
结合webpack,使用Babel转换器,可以安心用ES6了,关于箭头函数(匿名函数)一个注意点:
函数体内的this
对象,就是定义时所在的对象,而不是使用时所在的对象。
开始不知道这个特性,还弱弱的用了bind()方法把this值传进去,弱爆了!这个特性真的是好用,妈妈再也不用担心我的this对象丢失了!
2.vue data为对象,并且属性是动态添加或删除时视图无法响应
受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data
对象上才能让 Vue.js 转换它,才能让它是响应的。
eg:
data(){
return{
lists: {}
}
}
this.lists[this.currentCate] = lists //这样赋值视图是不会更新的!
正确的是:
Vue.set(this.lists, this.currentCate, lists);
持续更新中。。。
时间: 2024-10-18 06:24:57