From b01ba534a0017ad8bf85ddecff7610a6de6a74e9 Mon Sep 17 00:00:00 2001 From: crupest Date: Sat, 9 Mar 2019 01:42:38 +0800 Subject: User named route in dialog. --- .../src/app/user/user-login/user-login.component.ts | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'Timeline/ClientApp/src/app/user/user-login') diff --git a/Timeline/ClientApp/src/app/user/user-login/user-login.component.ts b/Timeline/ClientApp/src/app/user/user-login/user-login.component.ts index da642cb8..971d57ce 100644 --- a/Timeline/ClientApp/src/app/user/user-login/user-login.component.ts +++ b/Timeline/ClientApp/src/app/user/user-login/user-login.component.ts @@ -1,5 +1,7 @@ -import { Component, Output, OnInit, EventEmitter, Input } from '@angular/core'; +import { Component, Output, OnInit, EventEmitter } from '@angular/core'; import { FormGroup, FormControl } from '@angular/forms'; +import { UserService } from '../user-service/user.service'; +import { ActivatedRoute } from '@angular/router'; export type LoginMessage = 'nologin' | 'invalidlogin' | string; @@ -13,20 +15,24 @@ export class LoginEvent { templateUrl: './user-login.component.html', styleUrls: ['./user-login.component.css'] }) -export class UserLoginComponent { +export class UserLoginComponent implements OnInit { - @Input() - message: LoginMessage; + constructor(private route: ActivatedRoute, private userService: UserService) { } - @Output() - login = new EventEmitter(); + message: string; form = new FormGroup({ username: new FormControl(''), password: new FormControl('') }); + ngOnInit() { + this.message = this.route.snapshot.paramMap.get('reason'); + } + onLoginButtonClick() { - this.login.emit(this.form.value); + this.userService.tryLogin(this.form.value).subscribe(_ => { + this.userService.userRouteNavigate(['success', { reason: 'login' }]); + }, (error: Error) => this.message = error.message); } } -- cgit v1.2.3