首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从缓存中的阿波罗查询对象值

从缓存中的阿波罗查询对象值
EN

Stack Overflow用户
提问于 2020-03-06 10:52:21
回答 1查看 181关注 0票数 2

关于从阿波罗中的客户端缓存查询对象,我有一个简短的问题。

我有一个像这样的初始缓存状态:

代码语言:javascript
复制
cache.writeData({
   data: { value1: true, value2: { test: "123" } }
});

将查询数据附加到组件的容器:

代码语言:javascript
复制
import EditModalComponent from "..";
import gql from "graphql-tag";
import { graphql } from "@apollo/react-hoc";
import { compose, pure } from "recompose";

const QUERY2 = gql`
  query data {
    value2 @client {
      test
    }
  }
`;

const query2 = graphql(QUERY2, {
  name: "query2"
});

const EditModalWithData = compose(query2, pure)(EditModalComponent);

export default EditModalWithData;

如果我尝试查询value1,一切正常,但是如果我尝试使用上面的查询查询value2,我只会收到一个没有任何值的查询响应。

这是我在组件道具中收到的响应:

代码语言:javascript
复制
variables: {}
refetch: ƒ (variables)
fetchMore: ƒ (fetchMoreOptions)
updateQuery: ƒ (mapFn)
startPolling: ƒ (pollInterval)
stopPolling: ƒ ()
subscribeToMore: ƒ (options)
loading: false
networkStatus: 7
error: undefined
called: true
XXXXXX <- here should be something like: test: "123"

谢谢你的帮忙!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-09 10:51:27

我找到了解决办法。您需要在booth参数后面使用wirte @client

代码语言:javascript
复制
const QUERY2 = gql`
  query data {
    value2 @client {
      test @client
    }
  }
`;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60562562

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档