首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >react-relay删除突变更新

react-relay删除突变更新
EN

Stack Overflow用户
提问于 2020-06-22 14:10:59
回答 1查看 334关注 0票数 0

我不知道如何在删除行后更新表。后台使用Apollo-server,客户端使用relay。我正在尝试使用NODE_DELETE,但我不知道我做错了什么

这是删除突变

代码语言:javascript
复制
    const mutation = graphql`
mutation DeleteAdMutation(
    $id: ID!
) {
    deleteEvent(
        id: $id
    )
    {
        deletedId
    }
}`;

export const DeleteEvent = (input) => {
return new Promise((resolve, reject) => {
    commitMutation(
        environment,
        {
            type: 'NODE_DELETE',
            deletedIDFieldName: 'deletedId',
            mutation,
            variables: input,
        }
    )
});};

deletedId已成功返回,但表中没有任何更改

表查询:

代码语言:javascript
复制
 const GetADayTours = graphql`
query GetADayToursQuery(
    $type: String!,
    $page: Int!,
    $row: Int!,
) {
    getADayTours(
        type: $type,
        page: $page,
        row: $row,
    ) {
        page
        row
        total
        data{
            ...on aDayTour{
                ...Row_row
            }
        }
    }
}`;
  export default GetADayTours;

下面是行片段:

代码语言:javascript
复制
createFragmentContainer(RowComponent
, {
    row: graphql`
        fragment Row_row on aDayTour {
            _id
            id
            title
        }
    `,
});
EN

回答 1

Stack Overflow用户

发布于 2020-08-11 17:06:16

查询数据时,必须为分页记录添加ConnectionKey

请参考以下内容

https://relay.dev/docs/en/pagination-container.html#connection,关于如何在查询时添加连接。

在那之后,当你想要使用nodeId删除时,你必须使用‘connectionHandler -runtime’中的中继:

https://relay.dev/docs/en/relay-store#connectionhandler

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62508371

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档