обработка try...catch не правильно работает
Начала пет-проект на nuxt. С axios не могу разобраться.
внутри methods
async login() {
try {
const data = await this.$store.dispatch('login', { email: this.email.toLowerCase(), password: this.password})
this.$router.push('/admin/user')
} catch (e) {
console.log('>>', e)
}
}
внутри actions, метод login
async login({ commit }, user) {
try {
const resp = await this.$axios.$post('api/login/', user)
commit('setToken', true)
console.log('resp')
} catch (e) {
console.log('error', e.response)
return(e)
}
}
При правильном вводе данных приходит такая ошибка error ReferenceError: axios is not defined.
Ответы (1 шт):
Автор решения: Александр Сычёв
→ Ссылка
по шагам это в nuxt.config.js:
Шаг 1 - проверяем что добавлен в модуль
modules: [
'@nuxtjs/axios'
]
Шаг 2 - добавляем если нужны настройки
axios: {}
далее на странице: внимание на этот момент - передаем контекст asyncData({$axios})
Шаг 3 - добавляем
async asyncData({$axios}) {
try {
const test = await $axios.$get('https://jsonplaceholder.typicode.com/posts/1')
console.log(test)
}
catch (e){
console.log(e)
}
}