我有一个类似于“ SHOW_ALL”的函数,它将返回所有正常工作的值。 “ SHOW_COMPLETED”和“ SHOW_ACTIVE”无法按预期工作。
const getVisibleTodos = (todos, filter) => {
console.log("todos",todos);
switch (filter) {
case SHOW_ALL:
return todos;
case SHOW_COMPLETED:
return todos.rowData.filter(item => item.status === 'Completed');
case SHOW_ACTIVE:
return todos.rowData.filter(item => item.status === 'Active');
default:
throw new Error("Unknown filter: " + filter);
}
};
待办事项的价值如下
const todos = {
columnDefs: [
{headerName:"Todos",field:"todos"},
{headerName:"Status",field:"status"}
],
rowData: [
{
id: 0,
todos: 'Walk the Dog',
status: 'Completed',
},
{
id:1,
todos: 'learn Redux',
status: 'Active'
}
]
}
我在做什么错?
答案 0 :(得分:2)
返回此值(当然也返回Active
):
{ ...todos, rowData: todos.rowData.filter(item => item.status === 'Completed')}
您忘了返回todos
对象的其余部分,即columnDefs
属性。