我對Angular 2.0非常新(誰不是!?!?!),我無法讓我的路由工作!我不斷收到錯誤'Component "LoginComponent" has no route config. in [['/Register'] in LoginComponent
'。組件沒有路由配置。在組件中 - 角2路由錯誤
這是我@RouteConfig
和引導代碼(證明我注入依賴關係)從我boot.ts
文件採取
bootstrap(LoginComponent, [
ROUTER_PROVIDERS, HTTP_PROVIDERS
]);
@RouteConfig([
{path: '/login', name: 'Login', component: LoginComponent, useAsDefault: true},
{path: '/register', name: 'Register', component: RegisterComponent}
])
這是我的LoginComponent代碼...從我login.component.ts
文件
import {Component} from 'angular2/core';
import {FORM_DIRECTIVES, FormBuilder, ControlGroup, Validators} from 'angular2/common';
import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS} from 'angular2/router';
import {Http, Headers, Response} from "angular2/http";
@Component({
selector: 'login',
templateUrl: 'app/login/login.component.html',
directives: [FORM_DIRECTIVES, ROUTER_DIRECTIVES]
})
export class LoginComponent {
loginForm:ControlGroup;
http: Http;
userNotFound: boolean;
constructor(fb:FormBuilder, http: Http) {
this.loginForm = fb.group({
'email': ['', Validators.required],
'password': ['', Validators.required]
});
this.http = http;
this.userNotFound = false;
}
login(event: Event, val:string):void {
// stuff happens here
}
forgotPassword() {
// stuff happens here
}
}
在我看來,我有一個鏈接到我的應用程序的不同部分。
例外:在瀏覽器中,我得到了以下錯誤從我login.component.html
文件採取
<a (click)="forgotPassword()">Forgot Password</a>
<br>
<a [routerLink]="['/Register']">Register</a>
<br>
<div class="error" *ngIf="userNotFound">
User not found. Please try again...
</div>
但是組件「LoginComponent」沒有路線配置。在LoginComponent的[['Register'中] @ 23:19] 原文例外:組件「LoginComponent」沒有路由配置。 ORIGINAL STACKTRACE: 錯誤:組件「LoginComponent」沒有路由配置。
任何人都可以看到究竟是什麼問題嗎?默認的作品和一切都很好,直到我介紹<a [routerLink]="['/Register']">Register</a>
超鏈接。我一直在努力工作一段時間!
這裏是我的項目結構(如果它幫助)...
其中是你的'',第二件事angular2期望從LoginComponent路由但無法找到。 –
你正在引導錯誤的組件。因此,當你編寫'/ SomeComponent'(絕對路徑)時,你的根組件是'LoginComponent',它將從沒有RouteConfig的'LoginComponent'開始。 –
我有一個類似嵌套路由的問題。關於這個問題的解釋有所幫助。 https://github.com/angular/angular/issues/8420 – theUtherSide