使用带有graphql订阅的apollo客户端,我在示例中跟随,但是我没有看到订阅事件中的updateQuery更新我的属性。 updateQuery的返回值是否应该自动处理 - 或者我是否应该自己将其保存到商店?
componentWillReceiveProps(newProps) {
if (!newProps.data.loading && !this.subscription) {
this.subscription = newProps.data.subscribeToMore({
document: getMessages,
variables: { id: 'foo'},
updateQuery: (previousState, {subscriptionData}) => {
const newEntry = subscriptionData.data.createMessage;
return {
Conversation: {
messages: [
...previousState.Conversation.messages,
{
...newEntry
}
]
}
}
},
onError: (err) => console.error(err),
})
}
}