我如何更新redux-form中的数组字段值?

时间:2016-12-31 06:42:43

标签: reactjs redux redux-form

isMain = (v, k) => {

    let {avatars: {fields}, push} = this.props;

    fields.getAll().map((avatar, key) => {

      fields.remove(key);

      push('avatars', {
        deleteImage: avatar.deleteImage || false,
        uuid: avatar.uuid,
        fileName: avatar.fileName,
        url: avatar.url,
        setMain: key === k,
      });

    });

};

这是我尝试的方式^ 不起作用,我不知道为什么

我使用v6

我也尝试过插入

插入字段仅删除 - 已复制! 虽然新字段的值已更改

1 个答案:

答案 0 :(得分:7)

如果您只想更新数组for (var i = 0; i < mainView.history.length; i++) { if (mainView.history[i] === 'login.html') mainView.history.splice(i,1); } //So when you are on home page, login page sit on left: $$('.view-main .page-on-left, .view-main .navbar-on-left').remove(); 中的单个项目,则另一种解决方案是使用redux-form的Action Creators。只需要为操作提供索引值:

avatars

您可以用相同的方式创建另一个动作import { change } from 'redux-form' ... setMain: (k) => dispatch(change(`yourForm`, `avatars[${k}].setMain`, true)) ,以删除旧的主要头像项目。