vue2 - vue.set 添加属性与修改属性,修改数组的注意事项

1.vue.set 添加属性与修改属性

Vue.set(target,propertyName/index,value)

vm.$set(target,propertyName/index,value)

<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");
      }
    }
  });

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

 

2.修改数组的注意事项

在Vue修改数组中的某个元素一定要用这些方法:push()、pop()、shift()、unshift()、splice()、sort()、reverse()

或者是Vue.set() 或 vm.$set() 修改数组,不然vue无法监听到数组中的数据发生了改变就不会刷新页面

posted on 2023-02-17 12:11  Mikasa-Ackerman  阅读(487)  评论(0编辑  收藏  举报

导航