首页 > 解决方案 > React Apollo 默认 fetchPolicy

问题描述

如何为我的反应应用程序设置全局默认 fetchPolicy?我希望缓存和网络成为我的默认设置。我试过了:

const client = new ApolloClient({
  cache,
  link: headerResponseReader.concat(link),
  defaultOptions: { query: { fetchPolicy: "cache-and-network" } }
});

但它不起作用。

标签: reactjsapolloreact-apollo

解决方案


暂时你必须设置所有三种类型。

const defaultOptions = { 
  watchQuery: {
    fetchPolicy: 'cache-and-network',
    errorPolicy: 'ignore',
  },
  query: {
    fetchPolicy: 'cache-and-network',
    errorPolicy: 'all',
  },
  mutate: {
    errorPolicy: 'all'
  }
}

const client = new ApolloClient({
  link,
  cache,
  defaultOptions,
})

推荐阅读