我想知道是有可能有指向1個單個部件2個不同的路由?例如:2路線一個角度成分
{ path: 'signin', component: SignInComponent },
{ path: 'tenant/:id/signin', component: SignInComponent }
我這麼問是因爲我有一些有線的行爲..
我想知道是有可能有指向1個單個部件2個不同的路由?例如:2路線一個角度成分
{ path: 'signin', component: SignInComponent },
{ path: 'tenant/:id/signin', component: SignInComponent }
我這麼問是因爲我有一些有線的行爲..
是的,你可以使用指向同一部件2不同的路線。但是,當您從一條路線導航到與前一條路線使用相同組件的不同路線時,角將重新使用您的組件實例。它不會創建組件的新實例。
如果您將定位從「登入」到「租戶/:ID /登入」,然後角度將使用它「登入」創建SignInComponent的同一個實例。 SignInComponent的構造函數和init方法不會被調用。 你可以在init方法中使用observable。 ActivatedRoute的params方法是可觀察的。你可以做這樣的事情來提取參數:
路線是您ActivatedRoute實例
ngOnInit() {
this.route.params
.switchMap((params: Params) => this.service.getHero(+params['id']))
.subscribe((hero: Hero) => this.hero = hero);
}
的switchMap運營商允許你執行與可觀察到的電流值的動作,並將其映射到一個新的觀察到。 這段代碼獲得了一個在服務路由中指定了id的英雄。 你可以做這樣的事情。如果你會發布代碼,那麼我可以告訴你你需要做什麼。
怎樣的角度不同組件之間的區別?如果有'user'和'user /:gender'兩條路線,則導航可以正常工作,但從'user/male'失敗到'user/female'。 – Yang
我沒有得到你的問題。你能解釋一下嗎? – saurav1405
對不起,我沒有說清楚。有兩條路徑使用相同的組件,如'{path:'user',component:UserComponent}'和{{:user::gender',component:UserComponent}'。導航能夠以角度2從'/ user'正常工作到'/ user/male',反之亦然。但是它在'/ user/male'和'/ user/female'之間失敗了。我的意思是在前一個場景中創建新組件,即使組件是相同的,但不是後者。 – Yang
是,其可能的。它取決於你如何處理組件內部的功能實現 – ranakrunal9
是的,你可以使用?你能說出你面臨的問題嗎? –
routerLinkActive沒有被激活,我剛剛更新的例子 – Vnuuk