我想解决为我的应用程序所有页面加载当前用户的承诺。目前,我在每条$routeProvider.when()
路线中都重复执行该决议。
$routeProvider.when('/users/edit/:userId', {
templateUrl: 'app/app/assets/partials/user-edit.html',
controller: 'UserEditController',
resolve:{
'currentUser':function( UserService){
return UserService.getCurrentUser();
}
}
});
$routeProvider.when('/staff_profil/edit', {
templateUrl: 'app/app/assets/partials/profil-edit.html',
controller: 'ProfilEditController',
resolve:{
'currentUser':function( UserService){
return UserService.getCurrentUser();
}
}
});
我的目标是解决所有路由的当前用户,而无需重复。
您总是可以$routeProvider
使用自己的实现将现有的when方法包装在上。
var myModule = angular.module('myModule', ['ngRoute'])
.config(['$routeProvider', function($routeProvider){
var originalWhen = $routeProvider.when;
$routeProvider.when = function(path, route){
route.resolve = {
'currentUser':function( UserService){
return UserService.getCurrentUser();
}
};
return originalWhen(path, route);
};
}]);
您可能想要在其中添加一些错误检查,并使用诸如underscoresdefaults
方法之类的方法,而不是仅覆盖现有的resolve属性,但是至少这样,您可以保证所有路由都具有所需的内容。
将它包装成一个辅助方法也很容易。
问题内容: 我有一个单页应用程序,实际上只有一个页面。只有一个视图使用angularjs完成了许多javascript / ajax逻辑,但是没有路由到其他视图。 因此,我想在网址末尾混搭hashbang(#/)。我可以以某种方式完全关闭angularjs路由吗? 顺便说一句:我了解Htm5Mode,但是我希望它能在所有浏览器中使用。 问题答案: 如果没有定义,则不会进行路由,因此您的url中不会
问题内容: 我正在研究一个新的ASP.NET MVC和AngularJS应用程序,该应用程序旨在作为SPA的集合。我使用MVC区域概念来分隔每个单独的SPA,然后在每个MVC区域内使用AngularJS创建SPA。 由于我是AngularJS的新手,并且无法找到有关结合MVC和AngularJS路由的答案,因此我想在这里发表我的问题,以查看是否可以获得帮助。 我有标准的MVC路由设置,可用于每个M
问题内容: 谷歌上有一篇博客文章,他们正在索引javascript应用程序。但是,我的AngularJS应用程序www.fore- cite.com似乎根本没有索引。为了启用索引并使内容可搜索,我有什么特别的事情要做吗? 问题答案: Google搜寻器确实在其搜寻的页面上执行javascript。使用AngularJS,您需要采取一些步骤来确保您的应用程序得到正确的爬网和索引。 您必须使用html
问题内容: 因此,我正在编写一个框架,我希望以此为基础来开发一些我正在使用的应用程序(该框架在那里,所以我有一个可以使用的环境,并且该系统可以让我使用例如一个登录) 我要创建这个框架,并且它的应用程序都使用面向资源的体系结构。 现在,我想创建一个URL路由类,该类可以由APP编写器(也可能由CMS App用户)扩展,但我想通过查看以下方法找出最佳方法:其他应用程序如何做到这一点。 问题答案: 我更
我想要一个可以跟踪我所有应用程序使用时间的应用程序。如何在颤振中实现这一点?要使用哪些软件包?