我用 graphql 端点构建了一个 api 平台应用程序。在客户端,我使用这样的 apollo 客户端管理查询和突变(在 vuejs 前端):
import { ApolloClient } from 'apollo-client'
import { HttpLink } from 'apollo-link-http'
import { InMemoryCache } from 'apollo-cache-inmemory'
const httpLink = new HttpLink({
uri: 'http://localhost:8000/api/graphql'
})
export default new ApolloClient({
link: httpLink,
cache: new InMemoryCache(),
connectToDevTools: true
})
在我的 vuex 商店中,我像这样使用它:
fetchItems({commit}, options) {
commit(mutationsTypes.FETCHING_ITEMS);
client.query({
query: organismoQueries.SEARCH_ITEMS_QUERY(options),
}).then((res) => {
commit(mutationsTypes.FETCHING_ITEMS_SUCCESS, res.data.organismos.edges)
}).catch(error => console.error(error));
}
查询工作正常,问题是我无法重新加载表结果。当我使用相同的选项重新发送相同的查询时,永远不会请求 graphql 端点。我需要更改表格的排序,但是一旦达到所有组合,我就无法再次重新加载表格。
我试图在查询中引入一个随机参数,但我从服务器收到错误(显然)。
有没有办法重新发送相同的查询并执行诸如重新加载表之类的操作。
提前致谢!