【发布时间】:2018-03-13 21:33:32
【问题描述】:
我只是想问一个问题
我是 Preact 用户,从未尝试过 React,几个月前我才上过一门课程。但是现在我必须将 React 用于一个项目,并且我正在尝试移植我的一个库:https://github.com/k1r0s/preact-bind-group
这个库旨在简化表单设置
<FormGroup watch={change => this.setState({ ...change })}>
<div className="field">
<label className="label">Email</label>
<div className="control">
<input data-bind="mail" className="input"/>
</div>
</div>
<div className="field">
<label className="label">Contraseña</label>
<div className="control">
<input data-bind="pass" type="password" className="input"/>
</div>
</div>
<div>
<a onClick={_ => this.doLogin(this.state)} className="button is-primary">Submit</a>
</div>
</FormGroup>
我的代码在 Preact 上完美运行,但我在 React 上遇到问题,例如,每次我在表单上输入时都会失去焦点,而不是更新字段值。
这是 React 示例:https://codesandbox.io/s/9jv6n8mnrp
这是正在运行的 Preact:https://codesandbox.io/s/wmpv1o4z8
这个库保持一个内部状态来管理字段值和事件。我做错了什么?帮助表示赞赏
【问题讨论】: