我正在使用skipLocationChange在3个地图组件之间导航:Cesium,Leaflet和Openlayers 3.我的应用程序保留了组件之间的位置,如mapmip.webiks.com(旧版本)中所示。 为了在从组件移动到另一个组件时设置边界我订阅了以下函数:
setQueryBoundsOnNavigationEnd(event:NavigationEnd):void {
let urlTree:UrlTree = this.leaflet.router.parseUrl(event.url);
urlTree.queryParams['bounds'] = this.getBounds().toString();
extras.skipLocationChange = this.skipLocationChange;
return this.router.navigateByUrl(url, extras);
}
通过这种方式
leaflet.router.events.filter(event => event instanceof NavigationEnd && event.url.includes("/cesium")).take(1).subscribe(this.setQueryBoundsOnNavigationEnd.bind(this));
但是当我从铯回来时 - 网址不再隐藏了。
提前致谢!
答案 0 :(得分:-2)
我缺少unsubsribe(),因此出现了NavigationError并且状态未正确加载