通过键从对象中删除项目

时间:2019-02-05 09:57:35

标签: javascript reactjs object redux

所以我创建了一个带有对象作为待办事项列表的React Todo App。通过键删除项可以与 delete 一起使用,但是将其余项带回boolean而不是Object。

iNaT

我在控制台中找到了它:

from pandas._libs import NaT, iNaT, lib, reduction, groupby as libgroupby

3 个答案:

答案 0 :(得分:3)

在使用Redux时,您应该使用不可变的操作。您不应该直接更改状态。

为此,如果待办事项在对象中,则可以使用 destructuring 从待办事项中排除待办事项:

const { todos } = this.state;
const { [id]: _, ...newTodos } = todos;
this.setState({
    todos: newTodos
});

如果待办事项在列表中,并且由于您无法通过索引从数组中破坏项目,请使用slice方法,该方法不会修改数组,但会返回一个修改后的副本:

const { todos } = this.state;
this.setState({
    todos: [...todos.slice(0, id), ...todos.slice(id + 1)];
});

答案 1 :(得分:0)

您可以使用comma operator,先删除id,然后返回结果。

请参见以下示例:

const todos = {
  id: 1,
  msg: "Pet doggo"
},

newToDo = {newToDo: (delete todos['id'], todos)};
console.log(newToDo);

答案 2 :(得分:0)

您必须首先将状态复制到数组中,以便获得其副本。

然后,从新阵列中删除不需要的ID。

 PagedList.Config plConfig =
        new PagedList.Config.Builder()
        .setEnablePlaceholders(false)
        .setPrefetchDistance(30)
        .setPageSize(50).build();

类似上面的事情。