AngularJS:如何对我的应用程序的所有路由使用一个解析

2024-03-11

我想解决为我的应用程序的所有页面加载当前用户的承诺。 目前我在每一次重复这个决心$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();
      }
  }
 });

我的目标是解决我当前用户的所有路线而不重复。


为了完整起见,这里是整个解决方案,使用角度而不是下划线,并带有可链接的“何时”。这段代码没有什么新内容,只是结合了上面的一堆答案。

var originalWhen = $routeProvider.when;

    $routeProvider.when = function(path, route) {
        route.resolve || (route.resolve = {});
        angular.extend(route.resolve, {
            CurrentUser : function(User) {
                return User.current();
            }
        });

        return originalWhen.call($routeProvider, path, route);
    };
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AngularJS:如何对我的应用程序的所有路由使用一个解析 的相关文章

随机推荐