首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表单的CheckMark验证

表单的CheckMark验证
EN

Stack Overflow用户
提问于 2018-05-24 04:10:43
回答 1查看 1.8K关注 0票数 0

使用角4实现寄存器表单。当字段为空时,使用警报危险验证输入表单。

请建议如何验证这些输入表单字段。用户名密码..。通过在输入form.is旁边使用复选标记,验证意味着正确的符号,而不是验证手段x。目前,我正在使用html打字本和角4。

谢谢..

EN

回答 1

Stack Overflow用户

发布于 2018-05-24 04:38:22

好的试试这个。

代码语言:javascript
复制
import { Component } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms';

import { Md5 } from 'ts-md5/dist/md5';

import { UserService } from './shared/user.service';
import { IUser, IUserAuth, IUserFeatures } from './shared/user.moldes';

@Component({
  selector: 'app-login',
  styleUrls: ['./login.component.scss'],
  templateUrl: './login.component.html'
})
/**
 * Class representing the LoginComponent.
 */
export class LoginComponent {
  public userForm: FormGroup;

  public username: string;
  public password: string;
  public submitted: boolean;

  constructor(private formBuilder: FormBuilder) {
    this.submitted = false;
    this.buildForm();
  }

  /**
   * Triggers when the user click on the login button.
   */
  public onSubmit(): void {
    this.submitted = true;
    if (!this.userForm.valid) {
      return;
    }
    const user: IUser = {
      email: this.userForm.controls.username.value,
      password: Md5.hashStr(this.userForm.controls.password.value),
    };
    this.userService.authenticateUser(user).subscribe(() => {
      // 
    });
  }

  /**
   * Builds the user login form.
   */
  private buildForm(): void {
    this.userForm = this.formBuilder.group({
      username: [null,[Validators.required],
      password: [null, Validators.required]
    });
  }
}

在template.html中

代码语言:javascript
复制
<form [formGroup]="userForm" (ngSubmit)="onSubmit()" novalidate class="form-wrapper">

    <div class="form-group block"
         [ngClass]="{'has-error': submitted && (userForm.controls.username.errors)}">
      <label>Username</label>
      <input type="text" class="form-control" formControlName="username">
      <p>
        <span *ngIf="submitted && userForm.controls.username.errors?.required">Username is required</span>
      </p>
    </div>

    <div class="form-group block"
         [ngClass]="{'has-error': submitted && (userForm.controls.password.errors)}">
      <label>Password</label>
      <input type="password" class="form-control" formControlName="password">
      <p *ngIf="submitted && userForm.controls.password.errors?.required">Password is required</p>
    </div>

      <button type="submit" class="btn btn-default">Login</button>
      <div>
        <div *ngIf="submitted && userForm.valid">Tick</div>
        <div *ngIf="submitted && !userForm.valid">X</div>
      </div>
  </form>

基于userForm.valid,您可以显示隐藏图标。希望这能有所帮助。

代码语言:javascript
复制
   <div>
       <div *ngIf="submitted && userForm.valid">Tick</div>
       <div *ngIf="submitted && !userForm.valid">X</div>
   </div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50500820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档