javascript - React - 无法设置状态值

标签 javascript reactjs setstate

我是 React 新手

当我的灵魂如此疲惫时,我的代码就会遇到麻烦。 因为我无法设置 addTodo 函数的状态。 无法为任务添加新值(value)。

我的代码在这里:

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
});

关于javascript - React - 无法设置状态值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53847606/

相关文章:

flutter - 在 Flutter 中按下切换开关时交换小部件

reactjs - React Hooks : what is the correct way to handle async setState inside component ? (uploadProgress axios)

javascript - 强制不同的 CSS 样式覆盖现有的 adf 样式

javascript - 无法读取 Bootstrap 模块窗口中未定义输入文件的属性 '0'

javascript - MobX 存储在 React Native 中未更新

reactjs - 如何连接 React 前端和 Express 后端?

javascript - 使用 2017 年的 React-router React-transition-group 示例,其中内容组件不渲染

javascript - React (16.4.1) setState() 使用react-select组件更新当前onChange事件后面的状态一onChange事件

javascript - angularjs 下载损坏的 zip 文件

javascript - JQuery加载方法中使用post传递数据