Это надежный способ получить URL-адрес хоста как в SSR, так и в CSR:
let host = context.req ? context.req.headers.host : window.location.origin
Но где это разместить, чтобы все компоненты могли получить доступ к хосту? Он должен загружаться один раз на страницу и работать как с SSR, так и с CSR.
@lix Нет. Я мог бы, если бы это был единственный способ
Возможно, это не единственный способ, но он структурно хороший выбор, если в вашем приложении будет много компонентов, которым потребуется эта информация. Другие способы могут включать создание статической ссылки в экземпляре Vue, аналогично тому, как вы можете разрешить плагин, но обычно это плохая практика.
Или передача событий от компонентов к основному родительскому компоненту, но это отличный способ просто получить гораздо больше кода, чем вам нужно.
используйте asyncData в каждом компоненте, чтобы получить URL-адрес хоста как в ssr, так и в csr
asyncData работает только с компонентами страницы. Вы не хотите слишком много передавать через другие компоненты





Вы используете vuex в своем приложении?