Infinity Preloader AdminLTE3 VueJS и laravel-sanctum

Я использую: VueJS 2 Laravel 8 Larvel Sanctum Laravel Mix и хочу проверить авторизацию перед переходом на страницу Я использовал этот ответ для проверки подлинности realease, но с предварительным загрузчиком AdminLTE3 зависает и сайт не загружает магазин Vuex:

const store = new Vuex.Store({
    state:{
        user: false,
        isCheckedAuth: false
    },
    mutations:{
        auth(state, payload){
            state.user=payload;
            state.isCheckedAuth = true;
        }
    },
    getters:{
        isAuth(state){
            if(!state.user) return false; else return true;
        },
        getNameInitials(state){
            return `${state.user.last_name} ${state.user.first_name[0]}. ${state.user.middle_name[0]}.`;
        },
        hasPermission(state){
            return function (needPermission){
                if(state.user.permissions.find(permission => permission === needPermission))
                    return true;
                else
                    return false;
            }
        },
        isCheckedAuth(state){
            return state.isCheckedAuth;
        }
    },
    actions:{
        async checkAuth(){
            return await axios.get('/api/v.1.0/user').then(r=>{
                store.commit('auth',r.data.data)
            })
        }
    }
})

VueInstance:

const VueInstance = ()=>{
    new Vue({
        el: "#app",
        router,
        store,
        components: { App }
    })
}
store.dispatch('checkAuth').then(() => {
    VueInstance();
}).catch(() => {
    VueInstance();
})

если я перейду на

new Vue({
        el: "#app",
        router,
        store,
        components: { App }
    })

, он работает, но я не могу проверить авторизацию перед входом на страницу


person Andrew Stetsko    schedule 22.06.2021    source источник