首页 > 解决方案 > 如何对多个数组做出反应

问题描述

我有一个像下面的函数'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'
                }
              ]
            }

我在做什么错误?

标签: javascriptreactjs

解决方案


返回这个(Active当然还有):
{ ...todos, rowData: todos.rowData.filter(item => item.status === 'Completed')}


您忘记返回todos对象的其余部分,即一个columnDefs属性。


推荐阅读