Redux形式的两个提交按钮React

时间:2018-12-17 11:32:46

标签: reactjs redux-form

在有人将我引至其他帖子或将其标记为“重复”之前,我已经尝试过发现的所有解决方案,但没有任何效果。因此,希望有人可以对此有所了解,因为我对如何做到这一点感到困惑。

我在Laravel / React项目中有一个redux表单,但是我需要有一个附加按钮以及Submit来保存表单以备后用(即部分填充)。两个onClick属性都指向父组件中的handleSubmit函数,但不同之处在于,根据用于提交的按钮,isDraft标志的设置不同。目前,我的行为是“提交”按钮可以正常工作,但“保存以备后用”按钮什么也没做。

这是我的按钮:

<Button
    disabled={ submitting }
    type="button"
    onClick={ () => handleSubmit(onSubmit) }>
    Submit Application
</Button>

<Button
    disabled={ submitting }
    type="button"
    onClick={ () => handleSubmit(onSaveForLater) }>
    Save for Later
</Button>

这是父组件中包含的模块的简化版本:

<MyForm
    initialValues={ application }
    isSaving={ this.state.isSaving }
    onSubmit={ (params) => this._onSubmit(params) }
    onSaveForLater={ (params) => this._onSaveForLater(params) }
/>

_onSubmit()_onSaveForLater()函数几乎相同(它们只是在存储库中调用保存函数),不同之处在于每次都在参数中传递isDraft的不同值

const mergedParams = {
    ...params,
    isDraft: true,
    id: this.props.params.id
};

就像我说的那样,单击“提交”按钮可以正常工作,但是“保存以备后用”按钮什么也没做。我在这里想念什么吗?我不是redux格式的专家,我真的找不到一个确定的解决方案-甚至可能吗?

0 个答案:

没有答案