import { ReuseTabMatchMode, ReuseTabService } from ‘@delon/abc‘;
export class StartupService {
constructor(
private reuseTabService: ReuseTabService,
private inj: Injector) {
}
load(): Promise<any> {
// only works with promises
const pLoadData = new Promise(async (resolve, reject) => {
// reuse-tab 是否重用页面,把这个页面排除了,所以只要跳转到别的页面 目标tab就会消失
this.reuseTabService.mode = ReuseTabMatchMode.URL;
const excludes = new Array<RegExp>();
excludes.push(new RegExp(‘/target-route‘));
this.reuseTabService.excludes = excludes;
resolve({});
});
return pLoadData;
}
}
https://github.com/cipchk/ng-alain/issues/101
this.router.navigateByUrl(`/target-route`,{
skipLocationChange:true
});
skipLocationChange:Navigates without pushing a new state into history.
ng-alain的tab根据路由的history生成=>tab没有关闭=生成了history=>要关闭tab,需要不保留history
关键词:angular 4 route navigate without pushing a new state into history.
https://angular.io/api/router/NavigationExtras
原文:https://www.cnblogs.com/Lulus/p/9483030.html