Validation 离子2正则表达式验证不起作用

Validation 离子2正则表达式验证不起作用,validation,angular,typescript,ionic2,Validation,Angular,Typescript,Ionic2,我正在尝试验证一个只允许大于零的正数的输入字段,为此,我使用了带有一些规则的Validators.compose()。问题是我无法验证此字段,不知何故它没有按预期工作。我做错什么了吗?我怎样才能修好它?谢谢 打字脚本代码: export class SignupPage { public signup: FormGroup; constructor(public navCtrl: NavController, public navParams: NavParams, publi

我正在尝试验证一个只允许大于零的正数的输入字段,为此,我使用了带有一些规则的
Validators.compose()
。问题是我无法验证此字段,不知何故它没有按预期工作。我做错什么了吗?我怎样才能修好它?谢谢

打字脚本代码:

export class SignupPage {
    public signup: FormGroup;

    constructor(public navCtrl: NavController, public navParams: NavParams, public formBuilder: FormBuilder) {
        // setting up sign up form
        this.signup = formBuilder.group({
            "name": ["", Validators.required],
            "age": ["", Validators.compose([Validators.required, Validators.pattern('^[1-9]\d*$')])],
            "city": ["", Validators.required]
        })
    }

    onSubnmit(form) {
        console.log(form);

        let user = {
            'name': form.name,
            'age': form.age,
            'city': form.city
        }
    }
HTML代码:

<form [formGroup]="signup" (ngSubmit)="onSubmit(this.signup.value)">
    <ion-list class="signup-input">
        <ion-item>
            <ion-label floating>What is your name?</ion-label>
            <ion-input type="text" formControlName="name" [class.invalid]="!signup.valid && (signup.controls.name.dirty || submitAttempt)"></ion-input>
        </ion-item>
        <ion-item *ngIf="!signup.controls.name.valid && (signup.controls.name.dirty || submitAttempt)" >
            <small>Please fill out this field.</small>
        </ion-item>

        <ion-item>
            <ion-label floating>How old are you?</ion-label>
            <ion-input type="text" formControlNale="age" [class.invalid]="!signup.controls.age.valid && (signup.controls.age.dirty || submitAttempt)"></ion-input>
        </ion-item>
        <ion-item *ngIf="!signup.controls.age.valid && (signup.controls.age.dirty || submitAttempt)" >
            <small>Please enter a valid age.</small>
        </ion-item>

        <ion-item>
            <ion-label floating>What is your city?</ion-label>
            <ion-input type="text" formControlName="city" [class.invalid]="!signup.controls.city.valid && (signup.controls.city.dirty || submitAttempt)"></ion-input>
        </ion-item>
        <ion-item *ngIf="!signup.controls.city.valid && (signup.controls.city.dirty || submitAttempt)" >
            <small>Please fill out this field.</small>
        </ion-item>

    </ion-list>
    <ion-grid>
        <ion-row>
            <div class="signup-btn">
                <button ion-button block width-90 type="submit" [disabled]="!this.signup.valid">Get in</button>
            </div>
        </ion-row>
    </ion-grid>
</form>

你的名字叫什么?
请填写这个字段。
你多大了?
请输入有效年龄。
你的城市是什么?
请填写这个字段。
当选
这就是它的样子:

指令名称中的打字错误

formControlNale="age"
应该是

formControlName="age"