Работа с функциями во vue
При входе на страницу запускается функция login (все функции находятся внутри method). После получения положительного ответа нужно чтобы сработала функция getUser и изменяла значение isAdminings. Но он срабатывает после того как завершается работа функции login. как можно решить этот вопрос
login: function () {
const user = {
email: this.email,
password: this.password
}
this.$store.dispatch('Login', user)
.then((response) => {
this.getUser(response.data[0])
console.log('this.isAdminings', this.isAdminings)
if (this.$route.query.redirect === undefined) {
this.$router.push('/')
} else {
if (this.isAdminings === true) {
this.$router.push(this.$route.query.redirect || '/')
} else {
this.$router.push('/')
}
}
this.isAdminings = false
})
.catch(err => {
this.error = err.response.data.detail
})
},
getUser: function (userId) {
this.$store.dispatch('getUserById', userId)
.then((response) => {
this.user = {}
this.user = response.data
console.log(this.user.groups)
if (this.user.groups.includes(1)) {
this.isAdminings = true
console.log('this.isAdminings1', this.isAdminings)
} else {
this.isAdminings = false
console.log('this.isAdminings2', this.isAdminings)
}
})
.catch(err => {
this.error = err.response.data.message
})
}
Ответы (1 шт):
Автор решения: Andrew
→ Ссылка
Попробуйте
this.getUser(response.data[0])
поместить в конце функции login