@Artem0071
Безработный mr. Junior

Как лучше всего сделать splash screen для загрузки данных во Vue'шном SPA приложении?

У меня есть SPA на Vue, с vue-router'ом и vuex'ом

Перед работой приложения хотелось бы подгрузить кучу нужных данных, которые нужны для работы приложения. Решил сделать Splash Screen как в обычных приложениях, а в фоне подгружать данные

Столкнулся с проблемой в виде работы Vue routera.

Схема приблизительно такая:
'/' - это просто "hello world" страница без логики и прочего, поэтому там данные особо не нужны
есть еще
'/login' - тут нужно ввести данные чтобы войти (тут тоже не нужны данные, но нужно проверять что человек зареган)
'/*' - остальные страницы только после подзагрузки данных + проверка авторизации

Как решал проблему:
Настроил в роуторе хук:
router.beforeEach(async function (to, from, next) {
    if (!to.meta.guest && !store.getters['app/initialized']) {
        await store.dispatch('app/initialize') // тут проблема в  том, что появляется просто белый экран, а хотелось бы видеть загрузку
    }
    next()
})
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы