是否可以将自定义参数传递给setState回调函数?

时间:2017-12-20 12:01:28

标签: reactjs callback

有没有办法将参数传递给setState(函数(prevState,props,custom_rgument)?

removeTodo(evt) {
    this.setState((prevState, props, evt) => ({
        todoList: [...prevState.todoList.slice(0, evt), ...prevState.todoList.slice(evt + 1)]
    }))
}

或者实现这一目标的唯一方法是与州合作?

removeTodo() {
    this.setState(prevState => ({
        todoList: [...prevState.todoList.slice(0, this.state.index), ...prevState.todoList.slice(this.state.index + 1)]
    }))
}

1 个答案:

答案 0 :(得分:1)

不需要将evt参数传递给setState函数。无论如何它都在范围内。

removeTodo(evt) {
  this.setState(prevState => ({
    todoList: [
      ...prevState.todoList.slice(0, evt),
      ...prevState.todoList.slice(evt + 1)
    ]
  }));
}