2

我有一个“喜欢”按钮/突变。当我从服务器收到响应时,还有一瞬间。我怎样才能把它做成一个optimisticResponse

这是我的突变:

const LIKE_MUTATION = gql`
  mutation LIKE_MUTATION($postId: ID!) {
    createLike(postId: $postId) {
      id
      post {
        id
        title
        text
        createdAt
        author {
          id
        }
        likes {
          id
          user {
            id
          }
        }
      }
    }
  }
`

现在我在 Mutation 组件中尝试做的是:

optimisticResponse={{
  __typename: 'Mutation',
  createLike: {
    __typename: 'Like',
    id: this.props.post.id,
    post: this.props.post,
    likes: this.props.post.likes.concat({
      id: 'vcjsvdcjscd',
      user: { name: 'sample', id: 'jsdckbsdjcbdjs' },
    }),
  },
}}

类似的东西连接到postuser的架构中。我正在尝试提供假用户idname这里。它不起作用。我也在控制台中得到这个:

Missing field id in {
  "name": "user",
  "__typename": "User"
}
4

0 回答 0