我试图用VueJS,Axios和Laravel制作一个注册表。 我编写了以下快捷函数来发布帖子请求并处理laravel表单验证错误:
window.post = function (vueResource, url, data, responseCallback){
let _rsrc = vueResource;
let _data = vueResource.$data;
if(data !== ''){
_data = data;
}
axios.post(url, _data).then(responseCallback).catch(function(error){
if(error.response.status == 422){
_rsrc.errors = error.response.data.errors;
return false;
}
throw error;
});
}
现在,当我发布帖子请求时,请使用以下代码:
post(this,'/api/register','',function(response){
alert(1);
});
请求完成,创建用户,但不执行回调函数。没有警报。
为什么这不起作用?
答案 0 :(得分:0)
它对我有用。
let dataMock = {
"title": "SOme title",
"body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
}
post = function (vueResource, url, data, responseCallback){
axios.post(url, vueResource).then(responseCallback).catch(function(error){
if(error.response.status == 422){
_rsrc.errors = error.response.data.errors;
return false;
}
throw error;
});
}
post(dataMock,'https://jsonplaceholder.typicode.com/posts','',function(response){
alert(1);
});

<script src="https://cdnjs.cloudflare.com/ajax/libs/axios/0.17.1/axios.js"></script>
&#13;
尝试改为使用console.log。我猜你已经禁用了警报弹出窗口。
确保您没有停用警告弹出窗口,然后重试