#javascript #vue.js #frontend #quasar
Вопрос:
export async function signIn({ dispatch }, data) {
Loading.show()
firebaseAuth
.signInWithEmailAndPassword(data.email, data.password)
.then(async res => {
Loading.hide()
// if (!res.user.emailVerified) {
// dispatch('setNotification', {
// ...failed,
// message: 'Email not verified!'
// })
// return
// }
res.user.getIdToken().then(token => {
Loading.hide()
const { uid } = res.user
tempStorage.token = token
tempStorage.localId = uid
storage.delete(StorageKeys.token)
storage.set(StorageKeys.token, token)
storage.set(StorageKeys.localId, uid)
dispatch('setNotification', {
...success,
message: 'Successfully login!'
})
dispatch('getUserProfile')
// мне нужно получить доступ к значению здесь из функции getUserProfile
})
})
.catch(error => {
Loading.hide()
var msg = ''
switch (error.code) {
case 'auth/wrong-password':
msg = 'Wrong password'
break
case 'auth/user-not-found':
msg = 'User not found'
break
case 'auth/too-many-requests':
msg = 'Account temporarily suspended'
}
dispatch('setNotification', {
...failed,
message: msg
})
})
}
export async function getUserProfile({ dispatch, commit }) {
try {
const serviceUrl = `${urls.users}/${tempStorage.localId}`
const { data } = await request.get(serviceUrl)
commit('setUser', data)
} catch (err) {
console.log(err, 'err')
}
}
Как мне получить доступ к значению из этой функции disptach(getUserProfile)???
if (data.attributes.roles.includes('admin')) {
this.$router.push({ path: routesConfig.name.training })
} else {
this.$router.push({ path: routesConfig.name.profile })
}
я хочу, чтобы это условие выполнялось на основе
результата функции отправки, и верхнее условие перенаправит меня на разные страницы в зависимости от роли
Заранее спасибо!
Комментарии:
1. Мы не можем копировать и вставлять код с изображения…. Вставьте код! Stackoverflow имеет возможность отображать отформатированный код.
2.
How do i access the value from this...
Какую ценность?3. Я отредактировал его. Не могли бы вы, пожалуйста, проверить и помочь