如何在handlechange中获取表单值?

时间:2019-03-30 21:52:32

标签: reactjs redux-form

在我的表单中,我在一个表单域上有一个onChange事件:

        <div>
            <label>Last Name</label>
            <div>
                <Field
                    name="lastName"
                    component="input"
                    type="text"
                    placeholder="Last Name"
                    onChange={() => this.handleChange()}
                />
            </div>
        </div>

当handleChange被触发时,我想获取formvalues:

handleChange(){
        //do calculation
        console.log('handlechange',this.props.values)        
    }

此刻我正在获取this.props.values = undefined?如何获取表单值?

1 个答案:

答案 0 :(得分:1)

  1. 您需要创建自定义input
  2. 您需要拦截和更新redux的input.onChange函数。
  3. 可选-如果您希望其他表单值影响此值,则将reduxForm的formSelectorreact-redux的{​​{1}}的{​​{1 }}来访问connect中组件内的formProps(下面的工作示例已包含此功能)

components / CustomInput.js

mapStateToProps

containers / Form.js

this.props

工作示例https://codesandbox.io/s/lx1r4yjwy7