Javascript Angular JS-侦听或绑定$http请求
是否有一种方法可以在每次有$http请求时以及在收到响应后侦听/绑定事件 实际上,我已经通过提供自己的事件和侦听器手动完成了这项工作,但我只是好奇Angular JS中是否已经有一个侦听器用于此工作 我之所以想这样做,是因为每次我的应用程序发送/执行$http请求时,我都想显示我的加载屏幕,以指示应用程序正在检索数据,然后在收到响应后将其隐藏 谢谢 您可以使用Javascript Angular JS-侦听或绑定$http请求,javascript,angularjs,Javascript,Angularjs,是否有一种方法可以在每次有$http请求时以及在收到响应后侦听/绑定事件 实际上,我已经通过提供自己的事件和侦听器手动完成了这项工作,但我只是好奇Angular JS中是否已经有一个侦听器用于此工作 我之所以想这样做,是因为每次我的应用程序发送/执行$http请求时,我都想显示我的加载屏幕,以指示应用程序正在检索数据,然后在收到响应后将其隐藏 谢谢 您可以使用 var httpinterceptor = function ($q, $location) { return {
var httpinterceptor = function ($q, $location) {
return {
request: function (config) {
//show your loading message
console.log(config);
return config;
},
response: function (result) {
//hide your loading message
console.log('Repos:', result);
return result;
},
responseError: function (rejection) {
//hide your loading message
console.log('Failed with', rejection);
return $q.reject(rejection);
}
}
};
app.config(function ($httpProvider) {
$httpProvider.interceptors.push(httpinterceptor);
});
演示:您可以使用
var httpinterceptor = function ($q, $location) {
return {
request: function (config) {
//show your loading message
console.log(config);
return config;
},
response: function (result) {
//hide your loading message
console.log('Repos:', result);
return result;
},
responseError: function (rejection) {
//hide your loading message
console.log('Failed with', rejection);
return $q.reject(rejection);
}
}
};
app.config(function ($httpProvider) {
$httpProvider.interceptors.push(httpinterceptor);
});
演示:上面已经有一个模块,您可以根据需要使用和修改它。请检查此上面已经有一个模块,您可以根据需要使用和修改它。请检查此您可以使用。它通过使用角度拦截器自动加载条的进度。将同一时间段内的多个请求捆绑在一起,以便每个响应将进度条增加适当的量
app.config(['cfpLoadingBarProvider', function(cfpLoadingBarProvider) {
cfpLoadingBarProvider.includeSpinner = false; // second boot loader, you can show or hide
cfpLoadingBarProvider.includeBar = true; // main loader
cfpLoadingBarProvider.latencyThreshold = 200; // delay
}])
希望这有助于…您可以使用。它通过使用角度拦截器自动加载条的进度。将同一时间段内的多个请求捆绑在一起,以便每个响应将进度条增加适当的量
app.config(['cfpLoadingBarProvider', function(cfpLoadingBarProvider) {
cfpLoadingBarProvider.includeSpinner = false; // second boot loader, you can show or hide
cfpLoadingBarProvider.includeBar = true; // main loader
cfpLoadingBarProvider.latencyThreshold = 200; // delay
}])
希望这有帮助……谢谢,我们会关注的。谢谢,我们会关注的。