如何让 apollo-module 自动重新获取有关查询参数更新的查询

Posted

技术标签:

【中文标题】如何让 apollo-module 自动重新获取有关查询参数更新的查询【英文标题】:How can I have apollo-module automatically refetch queries on query param updates 【发布时间】:2021-09-25 01:45:19 【问题描述】:

我最近从手动调用 Hasura 客户端转为使用 Apollo-module。

我在@Component 下添加了这个

apollo: 
    features: 
      query: gql`query  features  id, name  `
    ,
    tenants: 
      query: gql`query  tenants  id, name  `
    ,
    listings: 
      query () 
        return gql`$(this as any).buildListingsQuery()`
      ,
      prefetch: true
    
  

但是,它仅在页面加载时获取数据,然后当查询更改时,数据会丢失,我必须手动重新获取它们造成延迟,加载选项也会丢失,因此我也无法使用该选项。任何线索都会有所帮助,谢谢

【问题讨论】:

您可以在watcher apollo.vuejs.org/api/smart-query.html#refetch 上使用refetch() 如果你使用<apollo-query>组件,这个可能更适合:apollo.vuejs.org/api/apollo-query.html#scoped-slot 【参考方案1】:

对于遇到类似问题的任何人,我已通过使用网络获取策略为我解决了这个问题。我加了

fetchPolicy: 'network-only'

【讨论】:

这将永远不会使用 Apollo 缓存。

以上是关于如何让 apollo-module 自动重新获取有关查询参数更新的查询的主要内容,如果未能解决你的问题,请参考以下文章

如何让约束自动调整大小和重新定位横向键盘键

如何让 Docker 容器在系统启动时自动启动?

如何让 Spring Boot 自动重新连接到 PostgreSQL?

如何让 Sinatra 在每次更改后自动重新加载文件?

如何让 Apollo 客户端重新获取特定查询?

如何让 Firefox 在文件更改时自动刷新?