反应 - 无法设置状态值
React - can't setState values
我是 React 新手
当我身心疲惫时,我的代码就会出现问题。
因为我无法设置 addTodo 函数的状态。
无法为任务添加新值。
我的代码在这里:
class App extends Component {
constructor(props) {
super(props)
const tasks = [
{ title: "First Proejct", id: 0 }
]
this.state = {
tasks,
uniqueId: 1
}
}
addTodo = (title) => {
const {
tasks,
uniqueId
} = this.state;
const task = {
title,
id: uniqueId,
}
const newTasks = [...tasks, task]
this.setState({
newTasks, <-- HERE. :(
uniqueId: uniqueId + 1
})
console.log(newTasks)
console.log(task)
}
render() {
return (
<div className="todoApp">
<h1>ToDO APP</h1>
<TodoInput addTodo={this.addTodo} />
<TodoList tasks={this.state.tasks} />
</div>
);
}
}
export default App;
所以..
我做错了什么?
你应该调用:
this.setState({
tasks: newTasks,
uniqueId: uniqueId + 1
});
我是 React 新手
当我身心疲惫时,我的代码就会出现问题。 因为我无法设置 addTodo 函数的状态。 无法为任务添加新值。
我的代码在这里:
class App extends Component {
constructor(props) {
super(props)
const tasks = [
{ title: "First Proejct", id: 0 }
]
this.state = {
tasks,
uniqueId: 1
}
}
addTodo = (title) => {
const {
tasks,
uniqueId
} = this.state;
const task = {
title,
id: uniqueId,
}
const newTasks = [...tasks, task]
this.setState({
newTasks, <-- HERE. :(
uniqueId: uniqueId + 1
})
console.log(newTasks)
console.log(task)
}
render() {
return (
<div className="todoApp">
<h1>ToDO APP</h1>
<TodoInput addTodo={this.addTodo} />
<TodoList tasks={this.state.tasks} />
</div>
);
}
}
export default App;
所以..
我做错了什么?
你应该调用:
this.setState({
tasks: newTasks,
uniqueId: uniqueId + 1
});