0

私は問題を抱えています (非常に予期しない場所でのあらゆる種類のエラー)。私の最善の推測では、ルーティングの設定方法が原因で発生する可能性があります。

これは私のapp-routing.module.ts です

const appRoutes: Routes = [
  { path: 'calendar', component: CalendarComponent, canActivate: [AuthGuard] },
  { path: 'calendar/:urlString', component: CalendarComponent, canActivate: [AuthGuard] },
  { path: 'myprofile', component: ProfileComponent, canActivate: [AuthGuard] },
  { path: 'profiles', component: ProfileComponent, canActivate: [AuthGuard] },
  { path: 'locations', component: LocationComponent, canActivate: [AuthGuard] },
  { path: 'login', component: AuthComponent },
  { path: '',   redirectTo: '/login', pathMatch: 'full' }
];

@NgModule({
  imports: [ RouterModule.forRoot(appRoutes) ],
  exports: [ RouterModule ]
})

次に、CalendarComponent.tsに次のコードがあります。

 imports (...)

 constructor(
   private activatedRoute: ActivatedRoute,
 ){
 }

 public ngOnInit(): void {
    this.activatedRoute.params.subscribe((params: Params) => {
        this.resolveURLParams(params);
    });
  }

  public resolveURLParams( params ): void {

    // do stuff based on params

  }

とにかく、ちょうど半年前 (RC @Angular2 の一部)、これらのいずれかをブラウザーに直接入力してアプリを起動できました。

localhost:3000

localhost:3000/calendarまた

localhost:3000/calendar/2017-05-27

期待される結果が得られます。アプリが--> -->を経由してルーティングするように、から開始する必要あります。localhost:3000../login../calendar../calendar/2017-05-27Cannot read property subscribe of nullCannot activate already activated outlet

たぶん、ルーティングが更新されており、遅れをとっています。これについて何か助けてください。

4

2 に答える 2