vue 设置数据响应

2017-02-22  本文已影响118人  开车去环游世界

我们在使用VUE的时候,一般会先定义好数据对象,比如说:

data:function(){
   return {
      a:"1"
   }
}

这是先设置好的,但是有一种情况,对象中某个Key是后来加上去的,怎么办呢?
官方提供了set方法

var data = { a: 1 }
var vm = new Vue({
  data: data
})
vm.$set('b', 2)
Vue.set(data, 'c', 3)

一个是针对Vue实例的,一个是针对全局的。

但是,还有一种特殊情况,是在你遍历的时候设置的。那怎么办呢。来段代码就知道了。

toggle:function(index,item){
        var me = this;
        if( (typeof item.expanded) == "undefined" ){
            Vue.set(this.items[index],'expanded',true);
        }else {
        item.expanded = !item.expanded;
        }
    }

直接用全局,针对对象的索引做响应。

上一篇下一篇

猜你喜欢

热点阅读