在React中设置状态

时间:2019-06-12 22:32:07

标签: javascript reactjs

我的react组件上有以下状态变量:

this.state = {
  application: {
    institutions: [{
     "name":null
    }]
  }
}

我想设置变量名的状态,而我所做的是这样:

handleChangeInstitution(event,indexInstitution){

    const institutions = [...this.state.application.institutions]

    institutions[indexInstitution] = {
        ...institutions[indexInstitution],
        [event.target.name]: event.target.value
    }

    this.setState(prevState => ({
        ...prevState,
        application: {
            ...prevState.application,
            institutions: [
                ...institutions,
            ]
        }
    }))

}

这很好用,但是当我在输入框中键入内容时,它确实很慢。 有什么方法可以优化它?

1 个答案:

答案 0 :(得分:0)

这是一个更清洁的解决方案。另外,这是更新数组项的非常常见的模式。关于性能,这部分代码无能为力。它不应该关于这部分。

Table2: EmployeeDetailID, ProjectName

1 Task Track
1 CLP
1 Survey Managment
2 HR Managment
3 Task Track
3 GRS
3 DDS
4 HR Managment
6 GL Managment