【问题标题】:React setState key values反应 setState 键值
【发布时间】:2017-07-11 10:34:24
【问题描述】:

我在使用 setState 的 react 应用中有一个函数

...
handleChange: (e, id) => {
  e.preventDefault()
  setState({ id: e.target.value })
}
...

问题是id 只是状态对象中字段的占位符,但每次触发该函数时,它都会创建一个新字段id 并在表单中分配最后更新的值>。 我可能做错了,所以我想知道是否有解决方法或解决方案。 任何帮助将不胜感激。

【问题讨论】:

    标签: javascript reactjs ecmascript-6 setstate


    【解决方案1】:

    由于 id 是一个具有状态键值的变量,所以你需要使用[],它会发生什么,id 将被它的值替换。

    如果您不使用[],则 id 将被视为“id”字符串

    像这样:

    handleChange: (e, id) => {
        e.preventDefault()
        this.setState({ [id]: e.target.value })
    }
    

    【讨论】:

    • 谢谢,我不知道 :-)
    • 很高兴,它帮助了你:)
    猜你喜欢
    • 2018-03-28
    • 2017-12-23
    • 1970-01-01
    • 1970-01-01
    • 2020-01-04
    • 2017-02-20
    • 2020-12-09
    • 2019-08-27
    相关资源
    最近更新 更多