如果不使用' LinkedStateMixin'我将如何重写以下代码?由于我正在升级到React 15.0并且不推荐使用此功能。
reactMixin(LoginView.prototype, React.addons.LinkedStateMixin);
<div className='form-group'>
<input type='text'
className='form-control input-lg'
valueLink={this.linkState('email')}
placeholder='Email' />
</div>
<div className='form-group'>
<input type='password'
className='form-control input-lg'
valueLink={this.linkState('password')}
placeholder='Password' />
</div>
以上代码是使用它的地方,我使用Redux来管理状态。
答案 0 :(得分:3)
你可以自己管理这个州。你在使用babel / es6吗?
class MyForm extends React.Component {
state = {}
emailChanged = (e) => {
this.setState({ email: e.target.value });
}
passwordChanged = (e) => {
this.setState({ password: e.target.value });
}
render() {
const { email, password } = this.state;
return (
<form>
<div className='form-group'>
<input type='text'
className='form-control input-lg'
value={email}
placeholder='Email'
onChange={this.emailChanged} />
</div>
<div className='form-group'>
<input type='password'
className='form-control input-lg'
value={password}
placeholder='Password'
onChange={this.passwordChanged} />
</div>
</form>
);
}
}
答案 1 :(得分:0)
如果您查看Two-Way Binding Helpers doc page,就会有一个示例显示如何在不使用LinkedStateMixin
的情况下执行相同操作。