【问题标题】:Store apollo query result in a local state?将阿波罗查询结果存储在本地状态?
【发布时间】:2019-10-25 21:29:41
【问题描述】:

假设我有一个带有用户 ID 的缩小项目列表。 通过单击它们,我想使用 apollo 查询延迟加载数据,展开并显示接收到的数据,例如用户名、地址等。 那么我应该如何在本地“缓存”或存储这些数据,以便能够重新加载+附加新的用户数据,并从本地状态显示已经加载的用户,而不是从服务器重新加载它们

带有假设行为的假设查询:

export default {
    apollo: {
        getUser: {
            query: gpl`query getUser($id: Int!) {
                getUser(id: $id) {
                    username
                    address
                }
            }`,
            onDataLoaded: data => this.storedUsers.concat(data) // smthg lk ths
        }
    },
    data () {
        return {
             storedUsers: []
        }
    }
}

或者这是一个不好的方法?

【问题讨论】:

    标签: vue.js apollo apollo-client vue-apollo


    【解决方案1】:

    Apollo 客户端有一个 InMemoryCache,除非你这么说,否则它不会重新加载数据。 看 https://www.apollographql.com/docs/react/caching/cache-configuration/

    【讨论】:

      猜你喜欢
      • 2018-10-03
      • 2018-12-06
      • 1970-01-01
      • 2019-09-25
      • 2019-02-09
      • 1970-01-01
      • 2019-04-16
      • 2019-02-04
      • 2017-03-03
      相关资源
      最近更新 更多