0

我想渲染多个<User/><CustomForm/>它们都是无状态组件。但是,如果我尝试修改其中一个,<CustomForm />其他的<CustomForm/ >也会被修改,因为它们都共享来自商店的相同属性。我怎样才能有多个独立的<CustomForm />

<User>
    <CustomForm user_id={user_id} />
</User>
<User>
    <CustomForm user_id={user_id}/>
</User>

我已经连接了这样的表格:

let CustomForm = (props) => {
    const { fields: {author, content}, handleSubmit } = props;

    return (
        <form action="">
            ....
        </form>
    )

}

CustomForm = reduxForm({
  form: `comment`, // I can't access props, i thought something like `comment_${props.user_id}`
  fields: ['author', 'content']
})(CustomForm)

export default CustomForm;
4

2 回答 2

1

不要使用formKey,因为它正在消失。

传递给的每个配置参数reduxForm()都可以作为道具传递,所以你可以这样做

<CustomForm form={`comment_${user_id}`}/>
于 2016-04-30T20:33:27.043 回答
0

您可以formKey为组件提供一个道具:

<CustomForm 
  formKey={user_id.toString()} // needs to be a string.
  user_id={user_id} 
/>
于 2016-04-30T19:34:47.120 回答