props: {
editFolderData: Object
}
這個時候,發現editFolderData取不到值!!!緣由是,props中editFolderData多是動態的,要放在watch中監測,可是這個帶來了新的問題:vuex報錯vue
watch: { // editFolderData取不到值,緣由是,props中editFolderData多是動態的,要放在watch中監測
editFolderData(newVal, oldVal) { this.formData = newVal; } }
可是這個時候報錯了!!!!vuex
editFolderData傳進來以前就讓其脫離vuex
// 點擊編輯按鈕
handleEdit(item) { // [Vue warn]: Error in callback for watcher "function () { return this._data.$$state }": "Error: [vuex] Do not mutate vuex store state outside mutation handlers."
// 解決方法:傳進來的值,先進行一次深拷貝經過lodash中的cloneDeep()方法,讓其脫離Vuex狀態機,
// 文件夾this.editFolderData = _.cloneDeep(item); }
}
這樣穿件來的值就不會報錯了ide