Javascript vuejs方法中的Axios异步/等待问题
我在Vue.js应用程序中有以下方法:Javascript vuejs方法中的Axios异步/等待问题,javascript,node.js,vue.js,async-await,axios,Javascript,Node.js,Vue.js,Async Await,Axios,我在Vue.js应用程序中有以下方法: register: async function () { const data = await Api.register(this.userMail, this.password) if (data.status === 200) { this.$session.set('userToken', data.data.token) } else { // do something else } } register(par
register: async function () {
const data = await Api.register(this.userMail, this.password)
if (data.status === 200) {
this.$session.set('userToken', data.data.token)
} else {
// do something else
}
}
register(params)是使用axios进行的Api调用:
register (userMail, password) {
return axios.post('http://localhost:8081/authentification/register', {userMail: userMail, password: password})
}
我的API完全使用我用来用Postman测试它的值,但我的Vue.js应用程序有以下错误:
[Vue warn]:v-on处理程序中的错误(承诺/异步):“TypeError:无法读取未定义的属性“数据”
TypeError:无法读取未定义的属性“数据”
我试着找出它的来源,但我找不到
你能帮我一下吗?错误是从这里来的,非常感谢。首先要做的是在
if(data.status==200)
上设置一个断点,看看数据的实际值是多少。或者console.log(data)
也不是一个简单的词。。。。据我记忆所及,axios返回的是承诺,而不是实际数据。尝试执行if(wait data.status==200)
您在提供的代码中执行的唯一data
属性访问是在data.data.token
中,但由于if
语句条件,无法在此处取消定义第一个数据。错误发生在其他地方。在开发工具调试器中,启用“暂停异常”和“暂停捕获异常”,然后重新生成错误。它将在精确的代码行上中断。错误来自这里,非常感谢。首先要做的是在if(data.status==200)
上设置一个断点,然后查看数据的实际值。或者console.log(data)
也不是一个简单的词。。。。据我记忆所及,axios返回的是承诺,而不是实际数据。尝试执行if(wait data.status==200)
您在提供的代码中执行的唯一data
属性访问是在data.data.token
中,但由于if
语句条件,无法在此处取消定义第一个数据。错误发生在其他地方。在开发工具调试器中,启用“暂停异常”和“暂停捕获异常”,然后重新生成错误。它会在准确的代码行上断开。