Redux form 使用redux form reducer.plugin()和动态生成的表单名称
我在应用程序中使用的许多表单都是动态生成的,因此在插件reducer中,我在创建表单之前不知道表单的名称,但我希望使用reducer插件的优点 在下面的例子中,如果我知道我的表单名为foo,它就可以正常工作,但在我的应用程序中,我有多个动态命名的表单,例如CalcForm1、CalcForm2。。。。CalcFormN等,它们都需要“计算”操作类型的功能 是否有一个原因可以将此用于动态命名的表单 非常感谢Redux form 使用redux form reducer.plugin()和动态生成的表单名称,redux-form,Redux Form,我在应用程序中使用的许多表单都是动态生成的,因此在插件reducer中,我在创建表单之前不知道表单的名称,但我希望使用reducer插件的优点 在下面的例子中,如果我知道我的表单名为foo,它就可以正常工作,但在我的应用程序中,我有多个动态命名的表单,例如CalcForm1、CalcForm2。。。。CalcFormN等,它们都需要“计算”操作类型的功能 是否有一个原因可以将此用于动态命名的表单 非常感谢 export const formPlugin = { foo: (state = {
export const formPlugin = {
foo: (state = {}, action) => { // <----- 'foo' is name of form given to reduxForm()
switch (action.type) {
case "CALCULATE":
return {
...state,
values: doCalculate(action.payload.expressions, state.values)
};
default:
return state;
}
}
};
export const formPlugin={
foo:(state={},action)=>{/您可以编写wrap函数并使用action.meta.form
差不多
const formHack = (state, action) => {
return (action.meta && action.meta.form) ?
formReducer.plugin({
[action.meta.form]: {...}
})(state, action) : formReducer(state, action)
}