如何使用$ route附加数据并在$ routeChangeStart

时间:2015-11-23 11:35:06

标签: angularjs routes

我想要做的是在配置路线时附加一些数据,如下所示:

$routeProvider
  .when('/home', {
    templateUrl: 'main.html',
    controller: 'HomeController',
    myData: 'my-data-home' // my custom data
  })
  .when('/profile', {
    templateUrl: 'profile.html',
    myData: 'my-data-profile' // my custom data
  })
  .when('/404', {
    templateUrl: '404.html'
  })
  .when('/login', {
    templateUrl: 'login.html',
    controller: 'LoginController',
    myData: 'my-data-login' // my custom data
  })
  .otherwise({
    redirectTo: '/404'
  });

我想从我的$routeChangeStart事件监听器中访问它:

$rootScope.$on( "$routeChangeStart", function(event, next, current) {
  // here I want to access myData for the next route
});

是否可以在AngularJS中执行此操作?如果是,我该怎么做?

1 个答案:

答案 0 :(得分:0)

以下代码可用于通过路径获取附加数据

$rootScope.$on( "$routeChangeStart", function(event, next, current) {
  var myData = next.myData; // here I want to access myData for the next route
});