2016-12-15 93 views
1

這是我的模塊代碼。所以我的應用程序是這樣的:登錄(按按鈕去儀表板) - >儀表板(按鏈接去兒童組件) - >在線/離線組件。刷新兒童組件Angular2時出錯

他們都在同一頁面上。

我用它來導航它們的方式:

this.router.navigate(['/dashboard'] 

routerLink= '/dashboard/online 

routerLink= '/dashboard/offline 

app.module.ts

@NgModule({ 
    imports: [ 
     BrowserModule, 
     FormsModule, 
     HttpModule, 
     JsonpModule, 
     RouterModule.forRoot([ 
     { 
      path: 'login', 
      component: LoginComponent 

     },{ 
      path: 'dashboard', 
      component: DashboardComponent, 
      children: [ 
       { 
        path: 'online', 
        component: OnlineComponent 
       },{ 
        path: 'offline', 
        component: OfflineComponent 
       },{ 
        path: '', 
        redirectTo: 'online', 
        pathMatch: 'full' 

       } 
      ] 
     },{ 
      path: '', 
      redirectTo: '/login', 
      pathMatch: 'full' 
     } 
     ]) 
    ], 

它工作正常的路由。但是,如果我在url欄顯示localhost:3000/dashboard/online時刷新頁面。刷新後頁面不會加載。控制檯顯示了這樣的錯誤:

error at GET http://localhost:3000/dashboard/node_modules/core-js/client/shim.min.js 
error at GET http://localhost:3000/dashboard/node_modules/zone.js/dist/zone.js 
error at GET 
http://localhost:3000/dashboard/node_modules/reflect-metadata/Reflect.js 
error at GET http://localhost:3000/dashboard/node_modules/systemjs/dist/system.src.js 
Uncaught ReferenceError, system is not defined. 

我認爲這與我設置的兒童組件或我可能需要添加基本href在Dashboard構件,因爲它有子組件的方式做。

請幫我這個。

謝謝。

回答

0

這可能與有關後退/前進箭頭和刷新的角度路由器問題有關。我有一個非常類似的問題。

我不知道事實如果這樣做,但嘗試在您的app.module這個,它將位置策略切換回到好老標籤的東西(所以url看起來像http://foo/#/bar而不是隻是http://foo/bar )。一旦我這樣做了,所有令人耳目一新的和前進/後退的導航問題就會消失(例如,如果我從我的站點去www.amazon.com,然後點擊後退箭頭,服務器就會響應大量「未找到」並且等等):

// other imports 
import { LocationStrategy, HashLocationStrategy } from '@angular/common'; 

@NgModule({ 
    declarations: [ ... ], 
    imports: [ ... ], 
    providers: [ 
    {provide: LocationStrategy, useClass: HashLocationStrategy} 
    ], 
    bootstrap: [ AppComponent ] 
}) 
export class AppModule { } 
+0

Hi @Tim感謝您的回答。是否提供和使用類保留字? –

+0

它的工作!謝謝 !!!! –

+0

我不認爲它們是保留的,只需要提供者對象上的鍵。不要在此引用我。 –