【问题标题】:Redux-Form Dynamically create N formsRedux-Form 动态创建 N 个表单
【发布时间】:2019-03-06 16:28:23
【问题描述】:

我们正在处理一种情况,我需要根据从后端获取的数据构建 N 个表单。

所有的形式都是一样的,除了它们的初始值。

我面临的主要问题是我需要使用表单名称将reducer插入到表单中-例如,以下示例显示了我们当前如何使用表单名称SHIPPING_ADDRESS_FORM_NAME将reducer插入到表单中:

import { reducer as formReducer } from 'redux-form';
const addressReducerPlugin = (state, action) => {
    switch (action.type) {
        case CHANGE:
            return action.meta.field !== 'country'
                ? state
                : { ...state, values: { ...state.values, state: '' } };
        default:
            return state;
    }
};
export default formReducer.plugin({
    [SHIPPING_ADDRESS_FORM_NAME]: addressReducerPlugin,
});

有没有办法动态创建 N 个单独的表单,还是我只需要创建一个表单来包装我的 N 个表单和索引它们?

谢谢。

【问题讨论】:

    标签: reactjs redux react-redux redux-form


    【解决方案1】:

    如果您真的想为所有收货地址提供单独的、独立的表单(而不是管理an array of addresses 的表单,您可以在装饰它们时将唯一的名称传递给reduxForm()

    reduxForm({
      form: 'shippingAddress0'
    })(AddressForm)
    

    完全有效。

    这有帮助吗?

    【讨论】:

    • 我将研究“字段数组”示例。乍一看,我可能可以使用这种模式解决我的问题。谢谢埃里克 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-24
    • 1970-01-01
    相关资源
    最近更新 更多