在这里 react 新手。我有一个返回表单(演示组件)的纯函数。在此表单中,我需要处理受控制的文本字段的 onChange 事件。 FWIU,我需要在 onChange 事件处理程序中使用 this.setState(...) 。然而,由于这是一个纯函数,我无法访问 this.setState()。有没有一种好的方法可以在 ES2015 函数中设置这些 onChange 事件的状态?如果有帮助的话我也在使用 redux。示例代码:
import React, {PropTypes} from 'react'
const ApplicationForm = ({submitHandler, person}) => (
<form onSubmit={e => submitHandler(e)}>
<div>
<label htmlFor="firstName">First Name:</label>
<input type="text" name="firstName" onChange={e => setState(e.target.value)} value={person.firstName || ''}/>
</div>
...
</form>
)
最佳答案
这是一个Stateless Function ,没有状态可设置
如果您使用的是 redux,您可能希望在 onChange 中触发 redux 操作,将新值作为参数传递,并让该操作更新 redux 存储中 person.firstName 的 firstName 值
我建议您查看 redux-form减少一堆样板文件
关于reactjs - 在纯 ES2015 函数中对 "setState"使用react,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38983526/