typescript - 在app中,带有参数的vuex getter

  显示原文与译文双语对照的内容
126 0

可以创建一个vuex存储 getter,它采用如下所示的参数参数:https://vuex.vuejs.org/en/getters.html

我使用a 编写我的代码,但是我不知道如何编写一个获取参数参数的getter 。IE,如下所示:

export function getItemById(state : State, id : Number) : MyItem | undefined {
 if(id === undefined) {
 return undefined;
 }
 for(const item of state.items) {
 if(item.id === id) {
 return item;
 }
 }
 return undefined;
}
export default <GetterTree<State, any>> {
 getItemById
};
时间:原作者:0个回答

137 5

基于 vuex文档,你可以实现以下操作:

getters: {
//...
 getTodoById: (state, getters) => (id) => {
 return state.todos.find(todo => todo.id === id)
 }
}
store.getters.getTodoById(2)//-> { id: 2, text: '...', done: false }

在"文稿"中,你可以尝试如下类似的内容:

export default {
 getItemById(state: State, getters: any) {
 return (id: number) => {
 return state.items.find(item => item.id === id);
 }
 }
}
原作者:
...