![](/img/trans.png)
[英]Calling ApolloClient GraphQl request inside componentDidMount method
[英]get clientState data from inside ApolloClient's request for use in operation.setContext react apollo graphql
React - Apollo - GraphQl 大家好,代码是:
const client = new ApolloClient({
uri: "http://someurl.com/graphqlserverendpoint/",
fetchOptions:{
credentials : "include"
},
request : operation => {
// i want to access needed data from here
const neededDataFromClientState = "QueryDataFromHere!!!"
const token = localStorage.getItem('authToken') || "" ;
operation.setContext({
headers: {
Authorization : `JWT ${token}`
}
})
},
clientState : {
defaults : {
isLoggedIn : !!localStorage.getItem('authToken') ,
neededData : "the data I want get"
}
}
});
我想从请求操作中访问名为 requiredData 的数据
任何机构想帮助我? 谢谢..
您没有提供导入 - 您的ApolloClient
来自apollo-boost
项目,这就是为什么它的配置选项与从apollo-client
导入的标准不同。
Apollo Boost 项目现已退役,因为 Apollo Client 3.0 提供了类似的简单设置。 我们建议删除所有
apollo-boost
依赖项并根据需要修改您的ApolloClient
构造函数。
Apollo boost是一个“简单的入门”项目,旨在隐藏一些配置复杂性([多几行] 缓存和链接配置)。
localStorage
用于保持用户登录页面/浏览器刷新。
其他数据可以通过上下文在链接之间传递 - 数据可以像本例中的token
一样完全存储在外部。 其他(在链之后,顺序很重要)link[-s] 可以使用operation.getContext().token
而不是从 localStorage 从上下文读取数据。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.