私は Angular 2.0 に非常に慣れていません (誰が!?!?!) で、ルーティングを機能させることができません! エラー「Component "LoginComponent" has no route config. in [['/Register'] in LoginComponent
」が発生し続けます。
これは、ファイル@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" にはルート構成がありません。[['/Register'] in LoginComponent@23:19]
元の例外: コンポーネント "LoginComponent" にはルート構成がありません。
元のスタックトレース: エラー: コンポーネント "LoginComponent" にはルート構成がありません。
誰が問題が正確に何であるかを見ることができますか? <a [routerLink]="['/Register']">Register</a>
デフォルトで機能し、ハイパーリンクを導入するまではすべて問題ありません。私はしばらくこれを解決しようとしてきました!
これが私のプロジェクト構造です(役立つ場合)...