我正在使用带有Prisma(http://prismagraphql.com/)的GraphQL订阅并反应+ react-apollo。
在上面的示例中,subscribeToMore(
尚未收听数字“3”。因此,查询chatsQueryConnection
尚未更新。
数字“3”已成功创建,因为此数字会在刷新页面后显示。
subscribeToMore
列表:
componentDidMount() {
this.props.chatsQueryConnection.subscribeToMore({
document: CHAT_SUBSCRIPTION,
updateQuery: (prev, { subscriptionData }) => {
console.log('componentDidMountSub')
if (!subscriptionData) {
return prev
}
return Object.assign({}, prev, {
chatsConnection: {
__typename: 'ChatConnection',
edges: [
...prev.chatsConnection.edges,
subscriptionData.data.chat
]
}
})
}
})
}
GrqphQL订阅查询:
const CHAT_SUBSCRIPTION = gql `
subscription {
chat(where:{mutation_in: CREATED}) {
node {
id
message
author {
name
nameFile
}
}
}
}
`
完整代码为here