帮忙看看这段react代码可以怎么优化

        getInitialState:function(){
                    return {
                        password:'',
                        trueName:'',
                        idcard:'',
                        reidcard:''
                    }
                },            
                onPassChange:function(e){
                    this.setState({password:e.target.value})
                },
                onTrueNameChange:function(e){
                    this.setState({trueName:e.target.value})
                },
                onIdcardChange:function(e){
                    this.setState({idcard:e.target.value})
                },
                onReidcardChange:function(e){
                    this.setState({reidcard:e.target.value})
                },

上面这段代码是对四个文本框的value的操作,怎么把这四个方法用一个方法来封装呢

阅读 1.6k
1 个回答
onChange: function(field) {
  return function(e) {
    this.setState({[field]: e.target.value})
  }
}

使用:

<input type="password" onChange={this.onChange('password')} />
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题