以下代码应返回两次数据-一次用于缓存,一次用于网络-但它最多返回六次。我相当确定,多个结果来自网络调用而不是缓存调用。服务器日志仅在解析器上显示一次命中。该组件仅实例化一次,因此肯定与Apollo或Appsync(或Angular ???)有关,但我不知道它是客户端还是服务器端。
this.appsync.client.hydrated().then(client => {
const appQuery = client.watchQuery({
query: queries.GetApps,
variables: {id: this.appId},
fetchPolicy: 'cache-and-network'
});
appQuery.subscribe(({data, error}) => {
console.log(data);
...
}
});
});