2016-10-03 64 views
4

我已经在我的angular 2项目中设置了一些路由。这在过去对我来说从来都不是问题,但我在使用这个更新版本的角度时遇到了困难。Angular 2 - 不能导航到直接使用URL的路由

如果我点击指向路线的链接,我没有任何问题。但是,如果我去任何其他路线比我的根(/)我的应用程序将卡在加载屏幕上。每次我试图通过URL我卡住去/login ..

相关文件

app.routes.ts

import { ModuleWithProviders } from '@angular/core'; 
import { Routes, RouterModule } from '@angular/router'; 
import { DashboardComponent } from './dashboard/dashboard.component' 
import { LoginComponent } from './login/login.component' 

import { AuthGuard } from './auth-guard.service' 

const appRoutes: Routes = [ 
    { path: '', component: DashboardComponent}, 
    { path: 'login', component: LoginComponent }, 
] 

export const appRoutingProviders: any[] = [ 

]; 

export const routing: ModuleWithProviders = RouterModule.forRoot(appRoutes) 

app.module.ts

@NgModule({ 
    declarations: [ 
    AppComponent, 
    LoginComponent, 
    DashboardComponent 
    ], 
    imports: [ 
    BrowserModule, 
    FormsModule, 
    HttpModule, 
    routing, 
    StoreModule.provideStore({user}) 
    ], 
    providers: [ 
    AuthGuard, 
    AuthService, 
    appRoutingProviders 
    ], 
    bootstrap: [AppComponent] 
}) 
export class AppModule { } 

app.component.html

<div id="header"> 
    <img src="app/assets/img/irs-logo.png" alt="irs"> 
</div> 
    <nav> 
    <a routerLink="/login" routerLinkActive="active">login</a> 
    <a routerLink="/" routerLinkActive="active">dashboard</a> 
    </nav> 

<div id="body" class="container body"> 
    <router-outlet></router-outlet> 
</div> 

还有什么我可以在这里失踪?

我的组件在这个阶段几乎是空壳

+0

你的Authguard服务与此有关?尝试删除逻辑,看看它的影响路由如何。 – Bean0341

+0

尝试在appRoutes的最后添加{path:'**',redirectTo:''},并尝试去除根以外的路径。检查这个重定向到主要或将卡住,也检查登录,看看会发生什么 – ulou

+0

@ulou我试过了,没有变化 – hamobi

回答

-1

如果您使用的是最终版本,这是怎么会:

[routerLink]="['login']"

(通知也没有领先/

相关问题