为什么Relay的NODE_DELETE不更新剩余节点列表

时间:2016-08-16 17:09:42

标签: relay mutation

我有NODE_DELETE变异,从类别列表中删除了Category。即使它提供了正确的deletedIDFieldname,在刷新页面之前,类别列表也不会更新。

我在这里想念一下吗?谢谢你的提示!

import Relay from 'react-relay';

export default class DeleteCategoryMutation extends Relay.Mutation {

  getMutation() {
    return Relay.QL`mutation{deleteCategory}`;
  }
  getFatQuery() {
    return Relay.QL`
      fragment on DeleteCategoryPayload {
        category {
          id
        },
        viewer {
          allCategories
        }
      }
    `;
  }
  getConfigs() {
    return [{
      type: 'NODE_DELETE',
      parentName: 'viewer',
      parentID: this.props.viewer.id,
      connectionName: 'allCategories',
      deletedIDFieldName: 'category{id}',
    }];
  }
  getVariables() {
    return {
      id: this.props.categoryId,
    };
  }
  getOptimisticResponse () {
    return {
      deletedId: this.props.categoryId,
      viewer: this.props.viewer.id,
    }
  }
}

1 个答案:

答案 0 :(得分:0)

我认为您需要进一步扩展您的setText,如下所示。

getFatQuery

希望这会有所帮助。但我同意这有点棘手,Relay应该在这样的情况下帮助你......