Уважаемые vue и пользователи apollo;
Я имею дело с при первой установке проблема.
При первом запуске приложения я не получить результаты.
Я использую ApolloClient, InMemoryCache, HttpLink из "apollo-boost"
Я храню свои userID и JWT в ApplicationSettings (локальное хранилище)
Как установить токен динамически?
Vue.use(VueApollo);
const httpLink = new HttpLink({
uri: "https://sebapi.com/graphql"
});
const authLink = setContext((_, { headers }) => {
// get the authentication token from ApplicationSettings if it exists
var tokenInAppSettings = ApplicationSettings.getString("token");
// return the headers to the context so HTTP link can read them
return {
headers: {
...headers,
authorization: tokenInAppSettings
? `Bearer ${tokenInAppSettings}`
: null
}
};
});
export const apolloClient = new ApolloClient({
link: authLink.concat(httpLink),
cache: new InMemoryCache()
});
const apolloProvider = new VueApollo({
defaultClient: apolloClient
});
Я создал проблему воспроизведения репозитория GitHub
и видео YouTube о проблеме
Нет ошибки при входе в систему, но после первого перехода на страницу списка я получил следующие ошибки ...
JS: [Vue warn]: Invalid prop: type check failed for prop "items". Expected Array, Object, got Undefined
JS: Error sending the query 'birds' ServerError: Response not successful: Received status code 400
У ЭТОГО АПОЛЛО НЕ ВИДЕТСЯ ИД пользователя во время первого запроса .
ПРИМЕЧАНИЕ : Вы можете легко очистить данные пользователя, используя yarn cl
script
# debug app without HMR
yarn devn
# clear user data of app
yarn cl