【发布时间】:2019-01-12 11:42:09
【问题描述】:
在构建 Todo 应用程序时,我想使用删除函数从数组中过滤掉一个对象。到目前为止,我得到了这个。
deleteTask(task) {
let taskList = this.state.tasks;
var newTask = taskList.filter(function(_task) { return _task != task})
this.setState({
tasks: newTask
});
}
唯一的问题是,该函数在使用该函数时返回整个数组。 因此,应该只从我的数组中返回一个对象的 Task 参数在我的 newTask var 中返回整个数组。
我怎样才能绑定或使这个功能工作?
我要从中删除对象的数组不在同一个组件中,不知道这是否重要。但要了解更多信息。
【问题讨论】:
-
请添加您在任务中得到的内容并使用箭头函数 =>
-
state.tasks和task参数的结构是什么? -
您必须使用任务的一些唯一标识符。像这样:
var newTask = taskList.filter(t => t.id != task.id)。您可能还想阅读以下内容:Equality comparisons and sameness
标签: javascript arrays reactjs function