vue物件的深層複製

_dalianmiao發表於2018-08-19

在專案的開發過程中,我發現使用this.$set(物件,key, value) 也沒有修改子元件物件的值,後面才發現vue物件存在深層複製的問題。
遇到這種情況怎麼辦?
在子元件中監聽父元件傳遞的物件的變化,深層複製

  props: {
    // 必傳的四個引數,列的資料,表格資料,搜尋資料,總數
    setTableTotalData: {
      type: Object,
      required: true
    }
  },
    watch: {
    setTableTotalData: {
      handler: function (val, oldval) {
        this.ColumnsData = val.columnsData
        this.tableData = val.tableData
        this.search = val.search
        this.total = val.total
      },
      deep: true
    }
  },

物件的資料就可以徹底改變了。

相關文章