Javascript 使用e.target.name设置意外标记的状态

Javascript 使用e.target.name设置意外标记的状态,javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,我的onChange处理程序得到了未使用的令牌,我想使用e.target.name,我希望它是关键字,怎么了 onChange = e => { this.setState({ e.target.name: e.target.value //error here }) } render() { return ( <section> <input type="text" name="keyword

我的onChange处理程序得到了未使用的令牌,我想使用e.target.name,我希望它是关键字,怎么了

onChange = e => {
    this.setState({
        e.target.name: e.target.value //error here
    })
  }

  render() {
    return (
      <section>
        <input type="text" name="keyword" value={this.state.keyword} onChange={() => this.onChange} />
</section>
)
}
onChange=e=>{
这是我的国家({
e、 target.name:e.target.value//此处出错
})
}
render(){
返回(
this.onChange}/>
)
}

如果要使用计算属性名,请使用以下语法:

onChange = e => {
    this.setState({
        [e.target.name]: e.target.value
    })
  }

  render() {
    return (
      <section>
        <input type="text" name="keyword" value={this.state.keyword} onChange={this.onChange} />
</section>
)
}
onChange=e=>{
这是我的国家({
[e.target.name]:e.target.value
})
}
render(){
返回(
)
}

此外,您不需要在匿名函数中传递
onChange
函数。只需将其传递给
onChange
prop即可引用它。

如果要使用计算属性名,语法如下:

onChange = e => {
    this.setState({
        [e.target.name]: e.target.value
    })
  }

  render() {
    return (
      <section>
        <input type="text" name="keyword" value={this.state.keyword} onChange={this.onChange} />
</section>
)
}
onChange=e=>{
这是我的国家({
[e.target.name]:e.target.value
})
}
render(){
返回(
)
}

此外,您不需要在匿名函数中传递
onChange
函数。只需将它传递给
onChange
prop即可引用它。

它不仅没有必要,而且是错误的。他们不调用这个方法,这不仅是不必要的,而且是错误的。他们不调用方法。基本上是的副本。基本上是的副本。