我正在尝试使用带有vue的axios通过ajax验证表单。
axios.post('api/registro', this.sede)
.then(response => {
this.$emit('cerrar')
})
.catch(err => {
console.log(err)
})
错误来自捕获部分,因为它来自Laravel验证器。服务器的响应是422,它包含一个带有消息的JSON和服务器发送的错误。
如果我不尝试记录错误,一切正常。
使用Axios中的拦截器,我的问题来自我,我没有正确返回拦截器中的错误,因此没有任何内容。
这就是我所拥有的:
axios.interceptors.response.use(null, function (error) {
// some logic
});
这就是应该的方式:
axios.interceptors.response.use(null, function (error) {
// some logic
return Promise.reject(error);
});
非常感谢大家的帮助。
您可以检查这样的错误:
if(err.response.data.errors){
this.errors = err.response.data.errors;
}
this.errors
将是一个数组,您可以使用v-for
循环循环