Apollo 乐观用户界面是否仅适用于观察查询?
乐观UI是否仅适用于watchQuery而不适用于订阅?我们正在广泛使用websocket上的订阅,无法使乐观UI正常工作,尽管它似乎在watchQuery上工作得很好Apollo 乐观用户界面是否仅适用于观察查询?,apollo,react-apollo,apollo-client,Apollo,React Apollo,Apollo Client,乐观UI是否仅适用于watchQuery而不适用于订阅?我们正在广泛使用websocket上的订阅,无法使乐观UI正常工作,尽管它似乎在watchQuery上工作得很好 所以我的问题很简单,我只需要确认乐观用户界面是否应该与订阅一起工作?watchQuery用于订阅缓存的更新(Apollo通常将其称为“存储”),这与服务器不同。见阿波罗的笔记: 这将根据指定的选项监视查询的缓存存储,并返回ObservaleQuery。我们可以订阅这个ObserveryQuery,并在缓存存储更改时通过Graph
所以我的问题很简单,我只需要确认乐观用户界面是否应该与订阅一起工作?watchQuery用于订阅缓存的更新(Apollo通常将其称为“存储”),这与服务器不同。见阿波罗的笔记: 这将根据指定的选项监视查询的缓存存储,并返回ObservaleQuery。我们可以订阅这个ObserveryQuery,并在缓存存储更改时通过GraphQL观察程序接收更新的结果。请注意,此方法不是GraphQL订阅的实现。相反,它使用Apollo的store来对查询结果进行反应式更新 基于服务器的完整实现称为GraphQL订阅。订阅更新是客户端在任意时间接收的内容。他们来了,他们也来了。因为无法进行预测,所以订阅中没有乐观UI的用例。因此,它们不受支持。我能想到的唯一用例是客户端是否订阅了自己的更改。在这种情况下,您可以使用optimisticResponse和update选项来进行更新