work hard work smart

专注于Java后端开发。 不断总结,举一反三。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Angular 4 模板表单校验

Posted on 2017-08-11 15:20  work hard work smart  阅读(350)  评论(0编辑  收藏  举报

1. 创建指令

ng g directive directives/mobileValidator

  

2. html

<form #myForm="ngForm" (ngSubmit)="onSubmit2(myForm.value, myForm.valid)">
  <div>
    <h3>登录</h3>
  </div>
  <div>用户名:<input ngModel required name="username" type="text" (input)="onMobileInput(myForm)"></div>
    <div [hidden]="mobileValid || moblieUntouched">
      <div [hidden]="!myForm.form.hasError('required','username')">
        用户名是必填项
      </div>
    </div>

  <div>电话: <input ngModel mobile name="mobile" type="text"></div>
  <button type="submit">登录</button>
</form>

  

3. 控制器

  mobileValid: boolean = true;
  moblieUntouched: boolean = true;

  onMobileInput(form: NgForm) {
    if (form) {
      this.mobileValid = form.form.get('mobile').valid;
      this.moblieUntouched = form.form.get('mobile').untouched;
    }
  }