简体   繁体   English

如何在reactjs中同时为数组使用setState和eventHandler?

[英]How to use setState and eventHandler both at a time for arrays in reactjs?

I'm new to React and I'm unable to use setState with eventHandlerMethod ( event.target.value ).我是 React 的新手,无法将setState与 eventHandlerMethod ( event.target.value ) 一起使用。 My array is not getting modified.我的阵列没有被修改。 The same previous value is being printed everytime without changing anything.每次都打印相同的先前值而不更改任何内容。

This is my code这是我的代码

 class App extends Component {
  state={
    userName : ["prakash" , "Shree Harsha"]
  }

  clickChangeListener = (event) =>{
   // console.log(this.state.userName[0])
    this.setState=({ userName : [event.target.value , event.target.value]});
  }
   render(){
    return (
      <div className="App">
        <h1>Welcome to react app</h1>
        <UserInput click={this.clickChangeListener}/>
       <UserOutput  
                   name1={this.state.userName[0]} 
                   name2={this.state.userName[1]} />
       <UserOutput name1={this.state.userName[0]} 
                   name2={this.state.userName[1]} />
       <UserOutput name1={this.state.userName[0]} 
                   name2={this.state.userName[1]} />
      </div>
    );
  }
}

What changes should I make so that my code works?我应该进行哪些更改才能使我的代码正常工作?

Just remove the = char.只需删除=字符。

Like the following:像下面这样:

this.setState({ userName : [event.target.value , event.target.value]});

setState is a function, read further here: https://reactjs.org/docs/react-component.html#setstate setState是一个函数,请在此处进一步阅读: https : //reactjs.org/docs/react-component.html#setstate

I hope that helps!我希望这有帮助!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM