在RC.1中使用新路由器时,我似乎无法扩展RouterOutlet
例:
- import { Directive } from '@angular/core';
- import { Router,ROUTER_DIRECTIVES,RouterOutlet } from '@angular/router';
- @Directive({
- selector: 'router-outlet'
- })
- export class RouterOutletDirective extends RouterOutlet {
- }
错误:
@angular/router/index”‘ has no exported member ‘RouterOutlet’.
我做错了什么或者这是否与RC.1中的新路由器有关?
更新:
- import { Directive,Attribute,ViewContainerRef,DynamicComponentLoader } from '@angular/core';
- import { Router,Routes,RouterOutletMap } from '@angular/router';
- import { RouterOutlet } from '@angular/router/src/directives/router_outlet';
- @Directive({
- selector: 'router-outlet'
- })
- export class RouterOutletDirective extends RouterOutlet {
- constructor(parentOutletMap: RouterOutletMap,_location: ViewContainerRef,name: string) {
- super(parentOutletMap,_location,name);
- console.log( parentOutletMap );
- }
- activate() {
- console.log('Activate');
- }
- }
所以它现在正在运行,但是RouterOutlet用红色加下划线,类型“any”不是构造函数类型,激活部分也不起作用.我错过了什么吗?
RouterOutlet和RouterLink不从@ angular / router导出.最近已修复此问题,我希望此修复程序包含在RC.2中.
您可以从专用路径(src / …)导入它们作为解决方法,直到发布新版本.
暗示
也就是说,还有一个新的路由器正在进行中.如果您目前正在从beta路由器或@ angular / router-derprecated迁移到@ angular / router,那么最好推迟到新的新路由器出来之前.