为什么不定义?当我尝试控制日志时,它会在每次点击任务时显示undefine。
const todos = [
{
task: 'watching react tuts',
isCompleted: true
},
{
task: 'eat dinner',
isCompleted: false
}
];
App.js
toggleTask(task) {
const foundTodo = _.find(this.state.todos, todo => task.todo == task);
foundTodo.isCompleted = !foundTodo.isCompleted;
this.setState({ todos: this.state.todos });
}
我有新的反应......所以我尝试创建一个todos应用程序。
答案 0 :(得分:1)
只需改变:
todo => task.todo == task
到
todo => todo.task == task
答案 1 :(得分:1)
假设您的示例中的代码与您的应用程序中的代码完全相同,那么可能是由于错误的变量命名。你有:
toggleTask(task) {
const foundTodo = _.find(this.state.todos, todo => task.todo == task);
..
}
在你的箭头函数中todo
是参数,但是你做task.todo == task
。
可能应该是:
toggleTask(task) {
const foundTodo = _.find(this.state.todos, todo => todo.task == task);
..
}