如何在商店Redux表单中放置更改

时间:2019-07-04 15:57:28

标签: field redux-form react-admin

我正在使用react-autosuggest进行自动完成输入(按类型提取)。我的代码基于来自material-ui中的react-admin和react-autosuggest的AutoCompleteArrayInput。然后,我用addField装饰了组件,以便与redux-form一起使用。

但是,当我将组件放入SimpleForm中时,所有的输入在redux存储中都有一个值,但我的却没有。当我查看React开发工具时,我的组件周围有一个Field组件

我尝试通过change从redux-form手动进行操作,但是它不起作用。 如何连接Redux存储中的组件以提交所有输入?

export default connect(
  null,
  {
    getSearched: crudGetAll,
  },
)(
  compose(
    addField,
    translate,
  )(ButtonSearchWithAutocompletion),
);
onSuggestionSelected = (event, { suggestion }) => {
    const { onSelectedValue, source } = this.props;

    change(REDUX_FORM_NAME, source, suggestion.id);
    onSelectedValue(suggestion);
  };

1 个答案:

答案 0 :(得分:0)

我们团队中的某人可以帮助我解决问题,对于面临相同问题的任何人,解决方案是像这样将change中的redux-form放入我的index.js中:

import { change } from 'redux-form';
import { connect } from 'react-redux';
import compose from 'recompose/compose';

import ButtonSearchWithAutocompletion from './component';

export default connect(
  null,
  {
    getSearched: crudGetAll,
    change,
  },
)(
  compose(
    addField,
    translate,
  )(ButtonSearchWithAutocompletion),
);

在我的component.js中,我使用change作为道具:

onSuggestionSelected = (event, { suggestion }) => {
    const { onSelectedValue, source, change } = this.props;

    change(REDUX_FORM_NAME, source, suggestion.id);
    onSelectedValue(suggestion);
  };

希望获得帮助!