我在我的错误数据中分配axios请求错误,如果我控制它,它会显示错误是否存在。如果没有用户名和电子邮件,它会控制{"username":["The username field is required."],"email":["The email has already been taken."]}.
,但如果我在div部分显示它,它什么也不会显示。这是我的错误数据:
data(){
return{
form:{
username:null,
email:null,
password:null,
},
errors:{}
}
},
methods:{
register(){
axios.post('/api/admin/register/',this.form).
then((res)=>{
console.log(res.data.token);
if(res.data.token){
this.$router.push({name:'login_admin'})
}else{
this.$router.push('/');
}
})//
.catch(error => {
(this.errors )= error.response.data;
console.log(this.errors);
});
}
}
}
<small class="text text-danger" v-if="errors.email">I{{errors.email}}</small>
如果我在console.log中定义了错误,但www.example.com未进行控制,则会显示错误errors.email,因此erros.email未获得v-if标记。如何解决此问题?
1条答案
按热度按时间voj3qocg1#
错误作为对象返回,因此我将错误数据转换为对象,问题得到了解决。
this.errors = JSON.parse(err.response.data)