我有几个CRUD屏幕,我可以轻松地在其逻辑中重复使用。
我有例如:
ListScreen
|_ CustomerListScreen
|_ ProductListScreen
但是,我看不出每个屏幕如何拥有商店。看起来我需要一个巨大的全球商店。
我希望:
const baseStore = new Vuex.Store({
state: {
searching:false,
data: [],
listUrl: '/sample'
},
actions:{
search(context, term){
console.log('SEARCH: ', term);
context.commit('searching', true);
context.commit('clear');
context.searching = true;
GET(this.listUrl)
.then(res=>res.json())
.then(res => {
console.log('RESULT: ', res);
context.commit('list', res);
context.commit('searching', false);
});
}
}
})
const customerStore = new Vuex.Store({
state: {
listUrl: '/customer'
}
})
const productStore = new Vuex.Store({
state: {
listUrl: '/product'
}
})
Modules not work here,因为我需要在每个屏幕中知道我正在谈论哪个模块,而不是让它比一个巨大的全局对象更好。