2017-08-31 47 views
2

我想在Redux-Form中一次更改表单的两个字段值。 存在更改方法,但它只允许更改一个字段。 请问有什么方法可以一次更改一个字段值?Redux-form:一次更新/更改两个字段值

Ex。

Fields: 
    - patternType 
    - color 

我想同时设置这两个字段。

+0

嘿!怎么样了?你自己找到了解决方案吗?听到我的回答是否有用,或者我误解了你的问题,我会很高兴。 – jonahe

回答

0

不知道是否有一个更好的办法,但如果你希望两个变化的两个输入值的基础上,只有一个变化这样工作的:

const Form = ({change, dispatch}) => { 
    const onFirstChange = (event) => { 
     const text = event.target.value; 
     // make change actions for both inputs 
     const changeFirst = change('first', text); 
     const changeSecond = change('second', text + text.toUpperCase()); 
     // dispatch them for both 
     dispatch(changeFirst); 
     dispatch(changeSecond); 
    }; 
    return (<div> 
    First: <Field name='first' component='input' type='text' onChange={onFirstChange} /><br /> 
    Second: <Field name='second' component='input' type='text' /> 
    </div> 
    ) 
}; 

const MyForm = reduxForm({ 
    form: 'foo' 
})(Form); 

// END EXAMPLE 
ReactDOM.render(
    <Provider store={store}> 
    <MyForm /> 
    </Provider>, 
    document.getElementById('root') 
); 

的jsfiddle演示https://jsfiddle.net/jonahe/399cpnz1/1/

相关问题