2016-08-19 156 views
1

我正在使用angular-loading-bar,并且我已将它包含在下面的角度模块中。 angular.module('myApp', [ 'chieffancypants.loadingBar'])隐藏特定页面的加载栏

我想在加载登录页面时禁用/隐藏加载栏。 localhost:3000/login 以及其他应该启用的页面。

转到文档后仍然无法解决此问题。任何帮助,将不胜感激。

+0

你是否有每个页面的模块和一组有限的页面?您可以将loadingBar作为依赖项添加到除登录页面之外的所有单个页面模块*。 – miir

+0

有很多页面添加到每个页面都很麻烦。所以我想添加依赖只登录页面,并设置加载完成这样的。 :cfpLoadingBar.complete();在$ scope.init上。但它力气.. – Pradeepb

回答

1

我在同一个问题。我解决了声明一个全局变量来控制是否应该显示加载栏。

在`放入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,这确实有窍门。

+0

感谢您的提示。不幸的是我无法测试它,因为我不再工作:) – Pradeepb