Angular 2,从不为实现OnActivate的组件调用routerOnActivate方法

前端之家收集整理的这篇文章主要介绍了Angular 2,从不为实现OnActivate的组件调用routerOnActivate方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用Angular 2 Router记录当前路由,使用官方文档中的示例代码https://angular.io/docs/ts/latest/api/router/OnActivate-interface.html
import {Component} from 'angular2/core';
import {
    OnActivate,ComponentInstruction
} from 'angular2/router';


@Component({selector: 'header-title',template: `<div>routerOnActivate: {{log}}</div>`})
export class HeaderTitle implements OnActivate {
    log: string = '';

    routerOnActivate(next: ComponentInstruction,prev: ComponentInstruction) {
        console.log('hello on activate');
        this.log = `Finished navigating from "${prev ? prev.urlPath : 'null'}" to "${next.urlPath}"`;
    }
}

从不调用方法routerOnActivate.

我使用RouteConfig注释配置了路由:

@RouteConfig([
    {path: '/',component: Home,name: 'Index',data: {title: 'Index page'}},{path: '/home',name: 'Home',data: {title: 'Welcome Home'}},{path: '/**',redirectTo: ['Index']}
])

我应该在路由器中配置其他东西来激活监听器吗?

您需要在解析路径的组件中实现routerOnActivate方法.在您的示例中,如果您在Home Component中实现它,它将被调用.
原文链接:https://www.f2er.com/angularjs/141518.html

猜你在找的Angularjs相关文章