在Vue中有时会遇到对象属性嵌套,获取数据时会遇到无法调用属性值的问题,

调式打开对象可以查看属性值是否有 下面的get set方法,如图:

 

如果没有使用以下方法:

1.使用this.$set(obj, key, value)/vue.set(obj, key, value) (未测试

<script>
export default {
 data() {
   return {
     student: {
       name: '张三',
     }
   }
 },
 methods: {
   setMessage() {
     this.$set(this.student, 'age', 15)
     console.log(this.student)
   }
 }
}
</script>

2.通过Object.assign(target, sources)方法 (测试可用

<script>
export default {
  data() {
    return {
      student: {
        name: '张三',
      }
    }
  },
  methods: {
    setMessage() {
      this.student.age = 15
      this.student = Object.assign({}, this.student)
      console.log(this.student)
      console.log(this.student.age)
    }
  }
}
</script>

这样就可以为属性增加get set方法了。

Logo

前往低代码交流专区

更多推荐