成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Angular表單驗(yàn)證器

lncwwn / 372人閱讀

摘要:表單驗(yàn)證器為何使用驗(yàn)證器原因用戶輸入的數(shù)據(jù)各式各樣并不總是正確的如果用戶輸入了錯(cuò)誤的數(shù)據(jù)格式那么我們希望給他們提供實(shí)時(shí)正確的反饋并且阻止表單的提交因此我們需要驗(yàn)證器來處理這些情況驗(yàn)證器驗(yàn)證器由模塊提供該模塊從中導(dǎo)出使用驗(yàn)證器的方法為對象指定

Angular 表單驗(yàn)證器 為何使用驗(yàn)證器?

原因: 用戶輸入的數(shù)據(jù)各式各樣,并不總是正確的,如果用戶輸入了錯(cuò)誤的數(shù)據(jù)格式,那么我們希望給他們提供實(shí)時(shí)正確的反饋,并且阻止表單的提交.因此,我們需要驗(yàn)證器來處理這些情況.

Angular 驗(yàn)證器

1.驗(yàn)證器由Validators模塊提供,該模塊從"@angular/forms"中導(dǎo)出

import { Validators }from"@angular/forms"

2.使用驗(yàn)證器的方法

// 為FormControl對象指定一個(gè)驗(yàn)證器
// 在視圖中檢查驗(yàn)證器的狀態(tài),并根據(jù)返回值做出反應(yīng)
例子1:
    let control = new FormControl("name", Validators.required);
例子2:
    this.myForm = this.fb.group({
        "name": ["", Validators.required]
    });

3.驗(yàn)證器可以驗(yàn)證的信息

// 檢查單個(gè)字段的有效性
方式一: myForm.controls["name"].hasError("");
方式二: myForm.hasError("", "name");
// 檢查整個(gè)表單的有效性
myForm.valid   // 整個(gè)formGroup是否可用
myForm.dirty   // 是否被修改過
myForm.touched // 是否提交過
自定義驗(yàn)證器

1.首先查看Angular源代碼,例如Validators.required:

export class Validators {
    static required(c: FormControl): StringMap {
        return isBlank(c.value) || c.value == "" ? { "required": true } : null;
    }
}

2.編寫自定義驗(yàn)證器

// name必須以"zhou"開頭
function nameValidator(control: FormControl): { [s: string]: boolean } {
    if (!control.value.match(/^zhou/)) {
        return { invalidName: true };
    }
}
// 使用方法
this.myForm = this.fb.group({
    "name": ["", [Validators.required, this.nameValidator]]
});

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/92591.html

相關(guān)文章

  • angular表單驗(yàn)證2

    摘要:表單驗(yàn)證使用場景在實(shí)際的開發(fā)中我們可能會(huì)有這樣的情況。姓名不能為空姓名太短姓名太長姓名不能為空姓名太短姓名太長借助表單本身比之前的更簡單了。結(jié)尾以上就是關(guān)于表單驗(yàn)證的全部內(nèi)容。 前言 在之前的文章《angular表單驗(yàn)證》中主要介紹了一些關(guān)于angular表單驗(yàn)證的基礎(chǔ)知識。在此篇中將著重以擴(kuò)展angular表單驗(yàn)證的相關(guān)內(nèi)容和實(shí)際開發(fā)中的應(yīng)用為主。 表單驗(yàn)證使用場景1 在實(shí)際的開發(fā)...

    darkbug 評論0 收藏0
  • angular6的響應(yīng)式表單

    摘要:在模塊里面引入要使用響應(yīng)式表單,就要從包中導(dǎo)入,并把它添加到你的的數(shù)組中。導(dǎo)入驗(yàn)證器函數(shù)響應(yīng)式表單包含了一組開箱即用的常用驗(yàn)證器函數(shù)。這些驗(yàn)證器屬性可以和響應(yīng)式表單提供的內(nèi)置驗(yàn)證器組合使用。 1:在AppModule模塊里面引入 ReactiveFormsModule 要使用響應(yīng)式表單,就要從@angular/forms包中導(dǎo)入ReactiveFormsModule,并把它添加到你的N...

    alogy 評論0 收藏0
  • angular6的響應(yīng)式表單

    摘要:在模塊里面引入要使用響應(yīng)式表單,就要從包中導(dǎo)入,并把它添加到你的的數(shù)組中。導(dǎo)入驗(yàn)證器函數(shù)響應(yīng)式表單包含了一組開箱即用的常用驗(yàn)證器函數(shù)。這些驗(yàn)證器屬性可以和響應(yīng)式表單提供的內(nèi)置驗(yàn)證器組合使用。 1:在AppModule模塊里面引入 ReactiveFormsModule 要使用響應(yīng)式表單,就要從@angular/forms包中導(dǎo)入ReactiveFormsModule,并把它添加到你的N...

    hzc 評論0 收藏0
  • angular6的響應(yīng)式表單

    摘要:在模塊里面引入要使用響應(yīng)式表單,就要從包中導(dǎo)入,并把它添加到你的的數(shù)組中。導(dǎo)入驗(yàn)證器函數(shù)響應(yīng)式表單包含了一組開箱即用的常用驗(yàn)證器函數(shù)。這些驗(yàn)證器屬性可以和響應(yīng)式表單提供的內(nèi)置驗(yàn)證器組合使用。 1:在AppModule模塊里面引入 ReactiveFormsModule 要使用響應(yīng)式表單,就要從@angular/forms包中導(dǎo)入ReactiveFormsModule,并把它添加到你的N...

    MycLambert 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<