Я делаю спа, я решил отправить запрос на получение пользователя при загрузке приложения.
Если пользователь (то есть авторизован), то должно быть перенаправление с component-page registration / authorization
на main
page.
created() {
axios.post(
'/get-user'
)
.then(response => {
let user = null;
if (response.data.user) user = response.data.user;
this.$store.commit('auth', user);
let $this = this;
setTimeout(function() {
let routeName = $this.$router.history.current.name;
if ($this.$store.state.user && (routeName == 'auth' || routeName == 'register')) //$this.$store.commit('deniedAcces');
$this.$router.push({name: 'main'});
$this.$store.commit('preloaderHide');
}, 1200);
})
.catch(function (error) {
console.log(error);
});
},
Код работает, но если после него перейти со страницы main
на страницу авторизации, отображается ошибка
node_modules\bootstrap-vue\es\components\form-input\form-input.js строка 123
Фактически,ошибка возникает, даже если вы вошли в систему и просто нажмите на переход на главную страницу из шапки.
https://gitlab.com/Kir1/laraspa.git
commit 2
app.js:6042 Uncaught TypeError: Cannot set property 'value' of undefined
at VueComponent.setValue (app.js:6042)
at VueComponent.onInput (app.js:6051)
at invoker (app.js:28784)
at HTMLInputElement.fn._withTask.fn._withTask (app.js:28569)
setValue @ app.js:6042
onInput @ app.js:6051
invoker @ app.js:28784
fn._withTask.fn._withTask @ app.js:28569