Angular 2で正常に動作していましたが、Angular 4にアップグレードしても機能しなくなりました。Angular 4でのルーティングの問題。以前のコンポーネントを破棄しません。
const appRoutes: Routes = [
{ path: 'Profile/:name', component: CompanyprofileComponent },
{ path: 'Account/Login', component: LoginComponent, pathMatch: 'full' },
{ path: 'admin', component: adminLayout, canActivate: [AdminGuard], canActivateChild: [AdminGuard], children: Admin_Routes },
// { path: 'organization', component:orgLayout,canActivate:[OrgGuard], children:Org_Routes},
{ path: '', component: userLayout, canActivate: [Guard], canActivateChild: [Guard], children: User_Routes }, //, canDeactivate: [PendingChangesGuard]
{ path: 'opr', component: OPRlayout, children: OPR_Routes },
];
export const routing: ModuleWithProviders = RouterModule.forRoot(appRoutes, { useHash: true });
これは私のapp.componentファイルです:
これは私のルーティングでは、のように見える私はURLをロードする際に、
今<router-outlet></router-outlet>
、http://localhost:4200/#/Itemsを言って、それが正しくコンポーネントをロードします。別のものをロードすると、実際に前のコンポーネントが破棄され、新しいコンポーネントが表示されるはずです。しかし、それはユーザーレイアウトの2つのコンポーネントを示しています。スクリーンショットの下を参照してください:
私は間違いなくこれを原因となっている恐ろしく何か間違ったことをしたかもしれないことを理解し、私はそれを見つけることができません。私はあなたが全体を投稿することなく問題を特定するのは難しいことを理解していますが(少しプロジェクトは静かですが)、私が必要とするのは、この問題をデバッグする際の参考となる点です。本当に感謝しています。もう1つ、このモジュールを削除すると、BrowserAnimationsModule、うまく動作します。しかし、私はAngular Material Animationを動作させるためにこのモジュールが本当に必要です。どんな助け?読んでくれてありがとう。
がさえ、私は数日前、この問題のカップルを見つけます。あるルートから別のルートへ移動すると、コンポーネントの1つが何らかのエラー(主に関連するデータバインディング)をスローしたときに起こっていました。あなたはそれが似たようなケースであることをコンソールで確認できますか? –
どこかにエラーがあるので、起こっていると言っていますか?コンソールはきれいです –
ああ。それは別のものです:| –