Angular 4:使用自定义RouteReuseStrategy导致无法读取未定义的属性“prototype”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Angular 4:使用自定义RouteReuseStrategy导致无法读取未定义的属性“prototype”相关的知识,希望对你有一定的参考价值。
自定义路由重用策略如下,
import { RouteReuseStrategy,ActivatedRouteSnapshot,DetachedRouteHandler} from '@angular/router';
export class CustomRouteReuseStrategy extends RouteReuseStrategy {
shouldDetach(route: ActivatedRouteSnapshot): boolean { return false; }
store(route: ActivatedRouteSnapshot, detachedTree: DetachedRouteHandle): void {}
shouldAttach(route: ActivatedRouteSnapshot): boolean { return false; }
retrieve(route: ActivatedRouteSnapshot): DetachedRouteHandle { return null ; }
shouldReuseRoute(future: ActivatedRouteSnapshot, curr: ActivatedRouteSnapshot): boolean {
console.log("inside shouldReuseRoute...");
return future.routeConfig === curr.routeConfig ;
}
}
我得到以下错误
错误:TypeError:无法在__extends(http://localhost:8000/app/UMSClient/com/ipc/ums/modules/shared/CustomRouteReuse.service.js:7:73)读取未定义的属性'prototype'
我通读堆栈溢出帖子,无法找到解决方案。一旦这个工作,我想确保我的一个子组件被重新加载而不是重用,然后在项目中附加组件。
我在AppModule中提供
{
provide: RouteReuseStrategy,
useClass: CustomRouteReuseStrategy
},
我将扩展更改为实现,并且错误消失,但自定义路由重用不起作用。
我正在使用角度4.3.1
答案
问题是我的工作区结构。当角度为4时,Angular 2版本被错误地拾取。当我纠正这个问题时,它开始正常工作。
以上是关于Angular 4:使用自定义RouteReuseStrategy导致无法读取未定义的属性“prototype”的主要内容,如果未能解决你的问题,请参考以下文章
在angular 2和bootstrap 4中使用自定义颜色实现进度条
使用 Angular 4 在 datatables.net 中实现自定义搜索