ログインを確認しています。それが成功すれば、同じアプリケーションの別のページにユーザーをリダイレクトしたいと思います。私はそれを行う以下のコードを持っています。location.go()は角度2でユーザーをリダイレクトしていません
import { Component } from '@angular/core';
import { FormGroup, FormControl, Validators, FormBuilder } from '@angular/forms';
import { DataService } from '../services/data.service';
import {Location, LocationStrategy, PathLocationStrategy} from '@angular/common';
@Component({
selector: 'app-login',
templateUrl: './login.component.html',
providers: [Location, {provide: LocationStrategy, useClass: PathLocationStrategy}],
styleUrls: ['./login.component.css'],
})
export class LoginComponent {
static location:Location;
constructor(private formBuilder: FormBuilder,
private dataService: DataService,location: Location) {
LoginComponent.location = location;
this.loginForm = this.formBuilder.group({
username: this.username,
password: this.password
});
}
loginForm : FormGroup;
username = new FormControl('', Validators.required);
password = new FormControl('', Validators.required);
Login(){
this.dataService.doLogin(this.loginForm.value.username,this.loginForm.value.password).subscribe(function(res){
console.log(LoginComponent.location)
LoginComponent.location.go('/report');
},function(err){
console.log("Err",err)
});;
}
}
しかし、問題がある、ブラウザにURLをhttp://localhost:3000/reportに変更。しかし、ページが読み込まれていないとき。リロードすると、新しいページが表示されます。
このコードで何が問題になっていますか? location.go()
はURLを読み込みません。
は、私はあなたが 'routing'のを使うのですか、あなたはリダイレクトのための' router'を使うべきだと思う? –
はい。ルーターは、私のために働いた。私が言及しているhttp://stackoverflow.com/questions/33571605/angular-2-howナビゲートから他のルートへ - このルータ - 親 - ナビゲーションを使用して –