Vue3 добавьте глобальный плагин после входа в систему или после определенной страницы

#vue.js #apollo #vuejs3 #apollo-client #vue-apollo

Вопрос:

Библиотеки: Vue3 и клиент Apollo v3

Проблема:

Я работаю над проектом, в котором есть страница входа в систему и защищенная страница. В текущей настройке Vue вы создаете поставщика Apollo, а затем используете Vue.use(apolloProvider) , который инициализирует клиента.

Чего я хочу добиться, инициализируйте поставщика Apollo только после того, как пользователь вошел в систему, поскольку заголовок авторизации должен быть передан конечным точкам graphql. Судя по документации, похоже, что для этого нет возможности. Причина этого в том, что в настоящее время аутентификация является отдельной услугой.

Комментарии:

1. Это проблема XY. В конце концов пользователь может выйти из системы, и что тогда? Должна быть возможность отложить инициализацию плагина или изменить его конфигурацию позже. Если это не задокументировано, для этого может потребоваться просмотреть исходный код плагина.

2. Как насчет использования второго экземпляра приложения Vue? Поскольку вы можете создать их много, вы можете использовать один эксклюзивный для поставщика Apollo.