如何解决创建后更改 ApolloClient 链接
我正在尝试更新我的 AolloClient uri
,在我的 NextJS 应用程序上创建它之后,在我的 getServerSideProps
中从我的环境变量中获取有效主机之后。
目前我有:
const gqlClient = new ApolloClient({
uri: `http://localhost:3000/graphql/`,cache: new InMemoryCache({
addTypename: false
})
});
export default function MyApp(props: AppProps & InitialProps) {
return (
<ApolloProvider client={gqlClient}>
<Component {...pageProps} />
</ApolloProvider>
)
}
MyApp.getinitialProps = async (context: AppContext) => {
// get new graphQLHostUrl from environment variables
const graphQLHost: '';
return {
graphQLHost: graphQLHost
}
}
但是,我无法在我尝试过的 MyApp
组件中设置 graphQL 客户端的新链接:
gqlClient.setLink(new HttpLink({uri: graphQLHost}))
然而,这不起作用,它陷入了无限循环。获得新的正确链接后,如何更新我的客户链接?
我的意图是在 useLazyQuery
中使用 index.tsx
,无论如何我可以在那里更改它吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。