我正在使用angular-loading-bar,我将它包含在角度模块中。
angular.module('myApp', [
'chieffancypants.loadingBar'])
我想在加载登录页面时禁用/隐藏加载栏。 的本地主机:3000 /登录 对于其他页面,应该启用它。
转到文档后仍然无法解决此问题。任何帮助将不胜感激。
答案 0 :(得分:2)
我遇到了同样的问题。我决定声明一个全局变量来控制是否应该显示加载条。
在`loading-bar.js"中,声明拦截器后:
var interceptor = ['$q', '$cacheFactory', '$timeout', '$rootScope', '$log', 'cfpLoadingBar', function ($q, $cacheFactory, $timeout, $rootScope, $log, cfpLoadingBar) {
$rootScope.showLoading = true;
并在请求块中:
if (!config.ignoreLoadingBar && !isCached(config) && $rootScope.showLoading)
我已使用$rootScope
全局转换变量
然后,在请求之前我不想显示加载,我设置了这个:
$rootScope.showLoading = false;
在请求之后再次将其设置为true
,这就行了。
答案 1 :(得分:2)
我的解决方法是将ignoreLoadingBar: true
添加到控制器中的$http
请求中。
然后我手动触发加载栏cfpLoadingBar.start()
并在我完成加载图像时手动停止它
cfpLoadingBar.complete()
cfpLoadingBar.start()
$http({
method: 'GET',
url: window.location.origin + '/api/photos/main',
ignoreLoadingBar: true
}).then( fucntion(bla){
/// Do some stuff
cfpLoadingBar.complete()
})