我有2个同级组件。在这两者之间,路由按预期工作,但是在导航时,无论我在哪个同级组件上,我都希望到达两者的父级组件。
父模块:
@NgModule({
imports: [
SharedModule,
NativeScriptCommonModule,
NativeScriptRouterModule,
NativeScriptRouterModule.forChild([
{
path: "",
component: ListeMonitorComponent,
},
{
path: "webview/:id",
loadChildren: () =>
import("~/app/monitordaten/webview/webview.module").then(
(m) => m.WebviewModule
),
},
{
path: "messwerte/:id",
loadChildren: () =>
import(
"~/app/monitordaten/daten-monitordaten/daten-monitordaten.module"
).then((m) => m.DatenMonitordatenModule),
},
]),
],
在兄弟姐妹之间导航的功能:
goToMesswerte(monId:number){
this.routerExt.navigate(['/monitorliste/messwerte/', monId], {skipLocationChange: true, transition: { name: 'slideRight' }})
}
goToWebview(monId:number){
this.routerExt.navigate(['/monitorliste/webview/', monId ], {skipLocationChange: true, transition: { name: 'slideRight' }})
}
如您所见,我尝试了不同的参数,例如skipLocationChange
,replaceUrl
,但都没有达到预期的效果
应用上方的代码的行为如下: 由于无法看到,我在屏幕上点击的位置将发生以下情况: 我在父组件上
--> webview (child, navigated with top right button)
--> messwerte (child, navigated with top right button)
--> webview (child, navigated with top right button)
--> messwerte (child, navigated with top right button)
<-- **pressing back** landing on webview
<-- **pressing back** landing on messwerte for a short period, than beeing redirected to the parent
无论同级组件如何或我在它们之间进行切换的频率如何,如何在按下时都可以定向到父组件?
答案 0 :(得分:0)
由于我提出了一个可行的想法,因此,我的解决方法是: 在这两个子组件上,我都只是使用导航到父组件的功能替换了后功能。
也许有一种更优雅的方法,因为圆形布线可能有用,但现在我的解决方案似乎很令人满意。