We can disable caching globally in jQuery by doing:
$.ajaxSetup({ cache: false });
我正在尝试在Apollo Client中找到类似的选项。我已经尝试了中间件和Cache-Control标头,但是没有运气。
是否可以像以前的jQuery选项一样以类似的方式(即通过在查询字符串后附加时间戳)来禁用缓存?
答案 0 :(得分:0)
尝试将fetchPolicy设置为“ no-cache”。像这样:
const defaultOptions = {
watchQuery: {
fetchPolicy: 'no-cache',
errorPolicy: 'ignore',
},
query: {
fetchPolicy: 'no-cache',
errorPolicy: 'all',
},
}
const client = new ApolloClient({
link: concat(authMiddleware, httpLink),
cache: new InMemoryCache(),
defaultOptions: defaultOptions,
});
来自this link的代码。
答案 1 :(得分:0)
haci soy yo
const defaultOptions = {
watchQuery: {
fetchPolicy: 'no-cache',
errorPolicy: 'ignore',
},
query: {
fetchPolicy: 'no-cache',
errorPolicy: 'all',
},
}
const client = new ApolloClient({
link: concat(authMiddleware, httpLink),
cache: new InMemoryCache(),
defaultOptions: defaultOptions,
});