0
我在Vuex商店中有許多公司。每個公司對象都有幾個對象...爲了簡化我的問題,想象一下Vue.js Vuex - 在數據庫中刪除未反映在視圖中
company {id:1,approval_notes:[{id:1},{id:2},{id:3} ],鰭: {total_rev:10000}}
我想從公司的1
的ID在視圖中移除與2的id approval_note,我有
deleteNote(obj) {
if(confirm('Are you sure you want to delete this note?')) {
let path = '/api/approval_notes/' + obj.id;
axios.delete(path)
.then(function(rsp) {
this.$store.dispatch('delete_approval_note', obj);
}.bind(this))
.catch(function (err) {
console.log('AXIOS ERR', err);
}.bind(this));
}
}
行動是
export const delete_approval_note = ({commit}, payload) => {
commit('DELETE_APPROVAL_NOTE', payload);
};
,變異是
export const DELETE_APPROVAL_NOTE = (state, payload) => {
_.each(state.companies, function(co) {
if(co.id = payload.company_id) {
let notes = co.approval_notes;
notes.splice(notes.indexOf(payload), 1);
}
});
};
的音符從數據庫中刪除,但視圖不無刷新頁面更新。
這種類型的事情我會做一堆,所以瞭解這個過程是很重要的,因爲我明顯地不知道現在。
任何幫助表示讚賞。
它實際上從筆記中刪除它? – Saurabh
不在「實時」中......它從數據庫中刪除並刷新頁面,我正在重新獲取筆記,因此它不再顯示。點擊時我需要刪除它。 – jgravois