0

現在、経路をAngular 2プロジェクトに追加しようとしています。コンポーネントのすべてが動作しますが、私はapp.module.ts上の私の輸入に「appRoutes」を追加した場合、エラーがここインポート時に経路が機能しない

Uncaught TypeError: Cannot set property 'stack' of undefined

を言って投げます私のコードです:

app.module.ts

import { BrowserModule } from '@angular/platform-browser'; 
import { NgModule } from '@angular/core'; 
import { FormsModule } from '@angular/forms'; 
import { HttpModule } from '@angular/http'; 

import { appRoutes } from './app.router'; 
import { AppComponent } from './app.component'; 
import { NavigationComponent } from './navigation/navigation.component'; 
import { AboutComponent } from './about/about.component'; 
import { ResumeComponent } from './resume/resume.component'; 
import { WorkComponent } from './work/work.component'; 
import { BlogComponent } from './blog/blog.component'; 
import { HomeComponent } from './home/home.component'; 



@NgModule({  
declarations: [ 
AppComponent, 
NavigationComponent, 
AboutComponent, 
ResumeComponent, 
WorkComponent, 
BlogComponent, 
HomeComponent 
], 
imports: [ 
appRoutes, 
BrowserModule, 
FormsModule, 
HttpModule 
], 
providers: [], 
bootstrap: [AppComponent, NavigationComponent, AboutComponent, 
      ResumeComponent, WorkComponent, BlogComponent, HomeComponent] 
}) 
export class AppModule { } 

app.router.ts

import { ModuleWithProviders } from '@angular/core'; 
import { Routes, RouterModule } from '@angular/router'; 

import { AppComponent } from './app.component'; 
import { AboutComponent } from './about/about.component'; 
import { ResumeComponent } from './resume/resume.component'; 
import { WorkComponent } from './work/work.component'; 
import { BlogComponent } from './blog/blog.component'; 
import { HomeComponent } from './home/home.component'; 

export const appRoutes: Routes =[ 
    { path: '', redirectTo: 'home', pathMatch: 'full' }, 
    { path: 'about', component: AboutComponent }, 
    { path: 'resume', component: ResumeComponent }, 
    { path: 'work', component: WorkComponent }, 
    { path: 'blog', component: BlogComponent }, 
    { path: 'home', component: HomeComponent } 
]; 

export const routes: ModuleWithProviders = RouterModule.forRoot(appRoutes); 

ご協力いただければ幸いです。このページは、appRoutesのインポートを追加するまで機能します。読み込み中に表示されます。

答えて

0

ModuleWithProvidersは必要ありません。

export const routes: ModuleWithProviders = RouterModule.forRoot(appRoutes); 

すなわち

export const routes: RouterModule.forRoot(appRoutes); 

、それが動作するかどうかを参照してください。からのことを削除してください。 (インポートを削除してもクリーンアップしてください)。

+0

入力いただきありがとうございます、私はあなたのソリューションを試して何も起こっていません。また、 ':'をルートの後に '='で置き換えようとしましたが、それでも何もありません。私はデモがそれを私が持っているやり方でやっているのを見ました。それがうまくいくので、私はとても混乱しています。 – BPierce

0

私自身の問題に対する解決策を見つけることができました。私はブートストラップからすべてのコンポーネントを削除しました:AppComponentのほかに[...]、宣言に他のコンポーネントを残して、問題を修正しました。

関連する問題