vue Object.assign 導致數據回填,輸入框不可以輸入,也不可以刪除值。

1、業務場景,在頁面中,監聽輸入框值改變,就將值存入本地緩存。下次進入頁面的時候,提醒用戶還有沒保存的數據,是否立即編輯。

2、代碼如下:

 watch: {
      form: {
        handler(newVal) {
          this.saveForm();
        },
        deep: true
      },
      otherForm: {
        handler(newVal) {
          this.saveForm();
        },
        deep: true
      }
}
 methods: {
    saveForm() {
        let self = this;
        let form = Object.assign(self.form, self.otherForm);
        localStorage.setItem("form", JSON.stringify(form));
    },
},

3、解決:

      saveForm() {
        let self = this;
        let formbrefore = JSON.parse(JSON.stringify(self.form))
        let form = Object.assign(formbrefore, self.otherForm);
        localStorage.setItem("form", JSON.stringify(form));
      },

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章