我有一个使用 Apollo 客户端的应用程序,当我添加 MSW 时,我发现缓存正在返回带有空响应的陈旧请求。MSW 团队表示,最佳实践是在运行测试以清除每个请求的缓存时,但我也想在模拟模式下运行我的应用程序以进行手动测试。
在启用模拟的情况下运行应用程序时执行以下操作似乎可行,但必须将这样的模拟逻辑放入应用程序似乎违反直觉。还有人遇到这种情况吗?
const [
fetchUser,
{ loading, error, data, refetch, networkStatus },
] = useLazyQuery(QUERY_GET_USER, {
fetchPolicy: API_MOCKING ? 'network-only' : 'cache-and-network',
nextFetchPolicy: API_MOCKING ? 'network-only' : 'cache-first',
});