Javascript 在promise中未调用React本机异步存储和apollo链接控制台日志
我试图在authLink函数中使用Javascript 在promise中未调用React本机异步存储和apollo链接控制台日志,javascript,react-native,apollo,apollo-link,Javascript,React Native,Apollo,Apollo Link,我试图在authLink函数中使用console.log,但没有看到任何控制台日志输出。这就好像函数本身从未被调用过一样 有人知道为什么我在authLink中调用它时看不到任何console.log输出吗 import { ApolloClient } from "apollo-client"; import { useQuery } from "@apollo/react-hooks"; import { InMemoryCache } from "apollo-cache-inmemory"
console.log
,但没有看到任何控制台日志输出。这就好像函数本身从未被调用过一样
有人知道为什么我在authLink中调用它时看不到任何console.log输出吗
import { ApolloClient } from "apollo-client";
import { useQuery } from "@apollo/react-hooks";
import { InMemoryCache } from "apollo-cache-inmemory";
import { createHttpLink } from "apollo-link-http";
import { setContext } from "apollo-link-context";
import AsyncStorage from "@react-native-community/async-storage";
import { resolvers, typeDefs } from "./resolvers";
const cache = new InMemoryCache();
const httpLink = createHttpLink({
uri: "https://foobar"
});
const authLink = setContext(async (_, { headers }) => {
console.log("In here!");
let authToken = await AsyncStorage.getItem("authToken");
if (authToken !== null) {
cache.writeData({
data: {
isLoggedIn: true,
authToken: authToken,
},
});
} else {
cache.writeData({
data: {
isLoggedIn: false,
authToken: "",
},
});
}
return {
headers: {
...headers,
authorization: authToken ? `Bearer ${authToken}` : "",
},
};
});
const client = new ApolloClient({
cache: cache,
link: authLink.concat(httpLink),
typeDefs: typeDefs,
resolvers: resolvers,
});
export default client;
authLink
从未被调用您是否实际运行任何查询?该代码在每个请求上都被调用,但在您实际发出请求之前不会被调用。