vue2 - vue.set添加属性与修改data中的数组

1.添加属性

使用:Vue.set(target,propertyName/index,value) 或 vm.$set(target,propertyName/index,value)

target:要修改的对象,propertyName:对象的属性,index:数组的下标,value:修改的属性值

注意:Vue.set() 和 vm.$set() 不能给vm 或 vm的根数据对象(data) 添加属性,只能给根对象(data)下的对象添加属性

<div id="root">
  <button v-on:click="addAttr">点击添加属性</button>
</div>

<script>
  const vm = new Vue({
    el: "#root",
    data: {
      obj: {
        id: "001"
      },
      array: [1,2,3]
    },
    methods: {
      addAttr(){
        // Vue.set(this.obj,"name","levi1").
        this.$set(this.obj,"name","levi1");
        this.$set(this.array,3,"levi");
      }
    }
  });

 

2.修改data中数组类型对象中的值

在Vue修改数组中的某个元素一定要用如下方法:

1.使用这些api:push()、pop()、shift()、unshift()、splice()、sort()、reverse()

2.Vue.set() 或 vm.$set()

posted on 2022-04-29 22:25  每天积极向上  阅读(2493)  评论(0编辑  收藏  举报

导航