我目前正在构建一个vue应用程序,并且正在使用axios。我有一个加载图标,我会在每次调用之前显示,并在调用后隐藏。
我只是想知道是否有一种方法可以在全球范围内做到这一点,这样我就不必在每次调用时都编写显示/隐藏加载图标?
这是我现在拥有的代码:
context.dispatch('loading', true, {root: true});
axios.post(url,data).then((response) => {
// some code
context.dispatch('loading', false, {root: true});
}).catch(function (error) {
// some code
context.dispatch('loading', false, {root: true});color: 'error'});
});
我在axios文档上看到有“拦截器”,但我不知道它们是在全局级别还是在每个调用中。
我也看到了这篇关于jquery解决方案的帖子,虽然不确定如何在vue上实现它:
$('#loading-image').bind('ajaxStart', function(){
$(this).show();
}).bind('ajaxStop', function(){
$(this).hide();
});
https://stackoverflow.com/questions/50768678
复制相似问题