对于应用程序,我想建立,是在抹红路径应该如何:Angular2路由使用(2.0.0-rc.5)路由
是从应用程序.component是我的引导类,它拥有登录和注册页面的链接。尽管仪表板应该处于同一级别,但只有在用户注册后才能看到。在仪表板组件中,有两个子组件,摘要和详细面板。
这里是我的路由配置:
import { Routes, RouterModule } from '@angular/router';
import {SignInComponent} from "./auth/signin.component";
import {SignUpComponent} from "./auth/signup.component";
import {DashboardComponent} from "./dashboard/dashboard.component";
import {PageNotFoundComponent} from "./error/page-not-found.component";
import {UsageInformationComponent} from "./dashboard/usage-information.component";
import {DetailedInformationComponent} from "./dashboard/detailed-info.component";
const appRoutes: Routes = [
{
path: '',
redirectTo: '/signin',
pathMatch: 'full'
},
{
path: 'signin',
component: SignInComponent
},
{
path: 'signup',
component: SignUpComponent,
},
{
path: 'dashboard',
component: DashboardComponent
},
{
path: 'summary',
component: UsageInformationComponent
},
{
path: 'detail',
component: DetailedInformationComponent
},
{
path: '**',
component: PageNotFoundComponent
}
];
export const routing = RouterModule.forRoot(appRoutes);
这里的app.module类:
@NgModule(<NgModuleMetadataType>{
imports: [
BrowserModule,
FormsModule,
routing
],
declarations: [
AppComponent,
SignInComponent,
SignUpComponent,
DashboardComponent
UsageInformationComponent,
DetailedInformationComponent,
PageNotFoundComponent
],
providers: [
HeroService,
AuthService,
appRoutingProviders
],
bootstrap: [AppComponent]
})
export class AppModule {
}
但每当我试图访问的摘要部分,始终相应的路径没有找到,因此PageNotFoundComponent被解雇。 这里是在仪表盘页面的代码:
<div class="container-fluid">
<header class="row spacing">
<nav class="navbar navbar-default navbar-static-top">
<div class="container">
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li><a routerLink="/summary" routerLinkActive="active">Summary</a></li>
<li><a routerLink="/detail" routerLinkActive="active">Summary</a>Detail</a></li>
</ul>
</div>
</div>
</nav>
</header>
</div>
<fr-dashboard *ngIf="hasLogin()"></fr-dashboard>
<router-outlet></router-outlet>
要测试的路线,我试图做到以下几点:当点击登入按钮时,页面应该被重定向到仪表板
登入按钮:
<button class="btn btn-primary" (click)="performSignIn()">Sign In</button>
导航:
performSignIn(){
this._router.navigate(['/dashboard']);
}
但当CLI CK所执行的操作,我在浏览器中收到以下消息:
任何人都可以请让我知道了什么是这里的问题。我正在使用angular2版本:(2.0.0-rc.5)
但是在那里我另一个问题。 – KTB
但还有另一个问题。 当登录成功时,重定向到/仪表板不成功。例如,出于测试目的,我试图在点击登录后重定向到仪表板页面: performSignIn (){这个_路由器。导航([ '/仪表板']); } 应用路由: { \t道: '登入', \t组件:SignInComponent },{ \t道: '仪表盘', \t组件:DashboardComponent }, 但我是出现错误:{“message”:“未找到”,“错误”:{“status”:404}} – KTB
您可以发布完整的错误日志以了解确切的测试用例吗?这会帮助我更好地指出问题。另外,你是否将所有这些组件导入到路由配置文件中? – Kevin