2016-08-25 12 views
0

私は '[(ngModel)] = "フォーム"をフォームタグに含めると、フォームにカスタム検証を追加しようとしています。Angularjs 2 rc 5 formカスタム検証

EXCEPTION: Error: Uncaught (in promise): EXCEPTION: Error in  pages/login.component.html:8:7 
ORIGINAL EXCEPTION: If ngModel is used within a form tag, either the name attribute must be set or the form 
    control must be defined as 'standalone' in ngModelOptions. 

    Example 1: <input [(ngModel)]="person.firstName" name="first"> 
    Example 2: <input [(ngModel)]="person.firstName" [ngModelOptions]="{standalone: true}"> 

ただし、入力にname属性が含まれています。クラスの個々の要素にカスタム検証を追加することができれば、入力をスタンドアロンモデルにすることは大丈夫です。

<div class="loginFormContainer fixedContainer"> 
     <form [(ngModel)]="form" #loginForm="ngForm"> 
      <div class="loginTitle"> 
      Sign in to xxxx 
      </div> 
      <div> 
       <span class="fieldLabel">Login name</span> 
      </div> 
      <input type="text" class="form-control" [(ngModel)]="model.name" name="name" #name="ngModel" class="inputField medium" > 
     <div> 

活字体コード

export class LoginComponent 
{ 
    form: ControlGroup; 
    model = new Login("", ""); 

    constructor(
     private route: ActivatedRoute, 
     private router: Router, 
     private loginServ : LoginService, 
     fb:FormBuilder 
    ){ 
     this.form = fb.group({ 
     user:['', Validators.required], 
     pass:['', Validators.required] 
     }); 

    } 

答えて

0

私は同じ問題を抱えていました。理由のために、私はngModelがここでうまく動かないことを理解していません。

関連する問題