我正在AngularJS 1.5.8中构建应用程序
我有一个名为app.component
的主要根组件
在app.component中,我想观察在子组件之间导航的所有路径更改
在观察中,我也需要获得routeParams。
我在angularjs component-router
中通过$ routeConfig定义了路由我尝试使用this.$routerOnActivate
但是没有调用它,因为我在root组件上。
var controller = function ($scope) {
$scope.$on('$routeChangeSuccess', (event, data) => {
// This is called everytime route is changed
// Here, I need to get the routeParams
// Not sure this is the correct way to watch route changes in angular component-router
});
}
angular
.module('example')
.component('RootComponent', {
templateUrl: 'app/components/enter/enter.component.html',
controller: controller,
$routeConfig: [
{path: '/a', name: 'AComponent', component: 'AComponent', useAsDefault: true},
{path: '/b', name: 'BComponent', component: 'BComponent'},
]
});
感谢。
PS
我试过How to watch for a route change in AngularJS?
每当我更改路线时都会调用它,但我无法从中获取routerParams
在官方文件中,它说3个参数可用 - $ event,current,next但只有$ event即将到来,其余的是未定义的。
当我们通过$ routeProvider定义路由时,我认为它正在工作,但在我的情况下却没有。