我正在使用'ngbp'(https://github.com/ngbp/ngbp)角度样板来构建我的项目,并且试图使ngProgress能够在逐节更改时显示加载程序。
我已经通过Bower安装了ngProgress。我到处有CSS和JS。
在我的app.js中,我有这个:
(function(app) {
app.config(['$stateProvider', '$urlRouterProvider', function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/');
}]);
app.run(function () {});
app.controller('AppController', ['$scope', function ($scope) {
}]);
}(angular.module("grinFood", [
'grinFood.home',
'grinFood.about',
'grinFood.menu',
'grinFood.catering',
'grinFood.takeithome',
'grinFood.contact',
'templates-app',
'templates-common',
'ui.router.state',
'ui.router',
'ngProgress',
])));
然后,例如,我的catering.js如下所示:
(function(app) {
app.config(['$stateProvider', function ($stateProvider) {
$stateProvider.state('catering', {
url: '/catering',
views: {
"main": {
controller: 'CateringController',
templateUrl: 'catering/catering.tpl.html'
}
},
data:{ pageTitle: 'Catering' }
});
}]);
app.controller('CateringController', ['$scope', function ($scope, ngProgress) {
var init = function() {
// A definitive place to put everything that needs to run when the controller starts. Avoid
// writing any code outside of this function that executes immediately.
ngProgress.start();
};
init();
}]);
}(angular.module("grinFood.catering", [
'ui.router'
])));
那就是我得到
TypeError: Cannot read property 'start' of undefined
还尝试将ngprogress放入app.js的控制器中,但我无法使其正常工作。
您可以在此处观看错误:http://ticketcomunicacion.com/grinfood/#/menu
任何帮助将不胜感激。谢谢
最佳答案
首先,ngbp看起来已经过时了。尝试http://yeoman.io/其次,我不知道为什么要用函数包装app
?除非您有另一个发生冲突的库,否则这是没有意义的。
您是否使用缩小器?如果是,请尝试使用知道anugarjs依赖框架的工具。基本上,您需要正确指定依赖项['$scope', function ($scope, ngProgress)
改成
function ($scope, ngProgress)
要么
['$scope', 'ngProgress', function ($scope, ngProgress)
关于javascript - 如何在我的项目中将“ngProgress”配置为加载器[ngbp样板],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24792254/