亚欧色一区w666天堂,色情一区二区三区免费看,少妇特黄A片一区二区三区,亚洲人成网站999久久久综合,国产av熟女一区二区三区

  • 發布文章
  • 消息中心
點贊
收藏
評論
分享
原(yuan)創

存儲管控系統表單驗證使用說明

2022-12-26 02:52:31
20
0

ElementUI表單驗證構成要素

要素

說明

model

表單數據(ju)對(dui)象,以key-value形式(shi)定(ding)義了每個表單數據(ju)

rules

表單驗證規則,用來驗證每個(ge)表單的合法性(xing),一般一個(ge)表單數據會對應一個(ge)或多(duo)個(ge)驗證規則

prop

表(biao)單校驗的屬性(xing)名,用以(yi)標(biao)識需要校驗哪個(ge)表(biao)單,必須與model對(dui)象中的屬性(xing)一(yi)一(yi)對(dui)應

 

prop設置方法

prop是(shi)表(biao)單校驗的(de)屬(shu)性名,必須與form model對象中的(de)屬(shu)性一(yi)(yi)一(yi)(yi)對應。

  • 一般情況

如:表單model對象為:

ruleForm: {
  host_ids: [],
  osd_deploy_type: 'bcache',
  xstore: 'filestore'
}

對應(ying)的表單prop應(ying)為:

<el-form-item prop="host_ids">
 ...
</el-form-item>
<el-form-item prop="osd_deploy_type">
...
</el-form-item>
<el-form-item prop="xstore">
...
</el-form-item>

          可以看(kan)到,我們(men)定義了三個(ge)(ge)(ge)model對(dui)象:host_ids、osd_deploy_type、xstore,他(ta)們(men)在(zai)html標簽中(zhong)(即每個(ge)(ge)(ge)表(biao)(biao)單(dan)(dan)項)分別對(dui)應(ying)一個(ge)(ge)(ge)prop屬(shu)性(xing)值,當用戶填寫(xie)表(biao)(biao)單(dan)(dan)時,表(biao)(biao)單(dan)(dan)值會(hui)自動填充至(zhi)model對(dui)象對(dui)應(ying)的(de)屬(shu)性(xing)中(zhong)。

  • model對象中包含對象(多層嵌套屬性)

如:表單(dan)model對象(xiang)為(wei):

ruleForm: {
  host_ids: [],
  osd_deploy_type: 'bcache',
  xstore: 'filestore',
  common: {
    data_devs: [],
	journal_size: 1,
	omap: 'false'
  }
}

對應的表單prop應為:

<el-form-item prop="host_ids">
...
</el-form-item>
<el-form-item prop="osd_deploy_type">
...
</el-form-item>
<el-form-item prop="xstore">
...
</el-form-item>
<el-form-item prop="common.data_devs">
...
</el-form-item>
<el-form-item prop="common.journal_size">
...
</el-form-item>
<el-form-item prop="common.omap">
...
</el-form-item>

可以(yi)看(kan)出,如果model中嵌(qian)套(tao)對(dui)(dui)(dui)象,對(dui)(dui)(dui)應的(de)prop也應以(yi)獲取對(dui)(dui)(dui)象值的(de)形式進行設置,即(ji):嵌(qian)套(tao)對(dui)(dui)(dui)象的(de)key.屬性。嵌(qian)套(tao)多層(ceng)對(dui)(dui)(dui)象同理(li),需帶上每(mei)層(ceng)對(dui)(dui)(dui)象的(de)key。

rules設置方法

本文介紹2種rules的(de)設置方法:

  • 第一種方法:在el-form標簽中設置rules屬性

例如有如下html代碼:

<el-form :model="ruleForm" :rules="rules">
    <el-form-item prop="host_ids">
	...
    </el-form-item>
</el-form>

可以(yi)看到在(zai)el-form標簽中設置(zhi)了(le)rules屬性,其值rules為在(zai)js中定義的變量(liang)名,如下所示:

rules: {
    host_ids:[{required: true, message: ''}],
    xstore: [{required: true, message: ''}]
}

rules變量(liang)中的(de)host_ids屬(shu)性與(yu)prop設置(zhi)的(de)host_ids屬(shu)性對(dui)應,這樣表單就可(ke)以自動匹(pi)配校(xiao)驗(yan)規則了。

  • 第二種方法:在每個el-form-item標簽中設置rules屬性及規則

<el-form-item prop="host_ids" :rules="[{required: true, message: ''}]">
...
</el-form-item>

可以看到(dao),el-form-item標簽中設置了rules屬(shu)性(xing),其屬(shu)性(xing)值(zhi)即為該form表單(dan)的校驗規則。

自定義驗證規則

有時候ElementUI中自帶(dai)的(de)驗證(zheng)(zheng)規(gui)(gui)則(ze)(ze)并(bing)不能滿足某些特殊字段的(de)校驗,這就需要我(wo)們(men)自定義驗證(zheng)(zheng)規(gui)(gui)則(ze)(ze)。自定義驗證(zheng)(zheng)規(gui)(gui)則(ze)(ze)有2個步(bu)驟:

1. 編寫規(gui)則(ze)驗證(zheng)函數:

var checkHostlist = (rule, value, callback) => {
      if (!value || !value.length) {
        callback(new Error('請選擇測試主機'))
      } else {
        callback()
      }
    }

可以看到,函數需要(yao)傳(chuan)入3個參數,分別(bie)是:

    rule—當前驗證(zheng)規則對象

    value—當前表(biao)單值

    callback—回調函數,調用后(hou)表示完成當前(qian)規則驗證。若驗證通過,直接調用callback();若驗證失(shi)敗,callback中傳入Error的(de)實例。

2. 指(zhi)定規則驗證(zheng)函數:

host: [
 { required: true, message: '不能為空', trigger: 'blur' },
 { validator: checkHostList, trigger: 'blur' }
]

可以在編寫驗證規(gui)則(ze)時(shi),通過(guo)validator屬性指定自定義的規(gui)則(ze)驗證函數。

總結

以(yi)(yi)上就(jiu)是存儲管(guan)控(kong)系統表單驗證(zheng)技術介紹以(yi)(yi)及一些實踐經驗的總(zong)結,包括prop設置(zhi)方法、rules設置(zhi)方法和自(zi)定義(yi)驗證(zheng)規則(ze)。我們可以(yi)(yi)根(gen)據(ju)實際應(ying)用場景靈活組合。

0條評論
0 / 1000
倪****闖
3文章數
0粉絲數
倪****闖
3 文章 | 0 粉絲(si)
倪****闖
3文(wen)章數
0粉絲數
倪****闖
3 文(wen)章 | 0 粉絲
原創

存儲管控系統表單驗證使用說明

2022-12-26 02:52:31
20
0

ElementUI表單驗證構成要素

要素

說明

model

表(biao)單數據對象,以(yi)key-value形式(shi)定義了每個表(biao)單數據

rules

表(biao)單驗證(zheng)規(gui)則,用來驗證(zheng)每個(ge)表(biao)單的合法性,一般一個(ge)表(biao)單數(shu)據會對應一個(ge)或(huo)多個(ge)驗證(zheng)規(gui)則

prop

表(biao)單校驗的(de)屬性(xing)名,用(yong)以標識需(xu)要(yao)校驗哪個表(biao)單,必須與(yu)model對(dui)象(xiang)中的(de)屬性(xing)一(yi)一(yi)對(dui)應

 

prop設置方法

prop是表單(dan)校(xiao)驗的(de)屬(shu)性名,必須與form model對象中的(de)屬(shu)性一一對應。

  • 一般情況

如:表(biao)單model對象為(wei):

ruleForm: {
  host_ids: [],
  osd_deploy_type: 'bcache',
  xstore: 'filestore'
}

對應的表單prop應為(wei):

<el-form-item prop="host_ids">
 ...
</el-form-item>
<el-form-item prop="osd_deploy_type">
...
</el-form-item>
<el-form-item prop="xstore">
...
</el-form-item>

        &nbsp; 可以看到,我們(men)(men)定(ding)義了三個(ge)model對(dui)(dui)象:host_ids、osd_deploy_type、xstore,他們(men)(men)在(zai)html標(biao)簽中(即(ji)每(mei)個(ge)表單項)分別對(dui)(dui)應一個(ge)prop屬(shu)性值,當用戶填寫表單時(shi),表單值會自(zi)動(dong)填充至(zhi)model對(dui)(dui)象對(dui)(dui)應的屬(shu)性中。

  • model對象中包含對象(多層嵌套屬性)

如:表單model對(dui)象為:

ruleForm: {
  host_ids: [],
  osd_deploy_type: 'bcache',
  xstore: 'filestore',
  common: {
    data_devs: [],
	journal_size: 1,
	omap: 'false'
  }
}

對應的表(biao)單prop應為:

<el-form-item prop="host_ids">
...
</el-form-item>
<el-form-item prop="osd_deploy_type">
...
</el-form-item>
<el-form-item prop="xstore">
...
</el-form-item>
<el-form-item prop="common.data_devs">
...
</el-form-item>
<el-form-item prop="common.journal_size">
...
</el-form-item>
<el-form-item prop="common.omap">
...
</el-form-item>

可(ke)以看出,如果model中嵌套(tao)(tao)對(dui)象,對(dui)應(ying)的(de)prop也應(ying)以獲(huo)取對(dui)象值的(de)形(xing)式(shi)進行設置,即:嵌套(tao)(tao)對(dui)象的(de)key.屬(shu)性。嵌套(tao)(tao)多層對(dui)象同理(li),需帶上每層對(dui)象的(de)key。

rules設置方法

本文介紹2種(zhong)rules的設置方法:

  • 第一種方法:在el-form標簽中設置rules屬性

例如有(you)如下html代碼:

<el-form :model="ruleForm" :rules="rules">
    <el-form-item prop="host_ids">
	...
    </el-form-item>
</el-form>

可以(yi)看(kan)到在(zai)(zai)el-form標簽中(zhong)設置了rules屬性,其值(zhi)rules為(wei)在(zai)(zai)js中(zhong)定義的變量名,如下所示:

rules: {
    host_ids:[{required: true, message: ''}],
    xstore: [{required: true, message: ''}]
}

rules變量中的(de)host_ids屬性與prop設置(zhi)的(de)host_ids屬性對(dui)應,這(zhe)樣表單就可以自(zi)動匹配校驗規則(ze)了(le)。

  • 第二種方法:在每個el-form-item標簽中設置rules屬性及規則

<el-form-item prop="host_ids" :rules="[{required: true, message: ''}]">
...
</el-form-item>

可以看到(dao),el-form-item標簽中設置了rules屬(shu)性,其(qi)屬(shu)性值即(ji)為該form表(biao)單(dan)的(de)校(xiao)驗規則。

自定義驗證規則

有時候ElementUI中自(zi)帶的驗(yan)證(zheng)(zheng)規(gui)則(ze)并不能(neng)滿足(zu)某(mou)些特殊字段的校驗(yan),這就(jiu)需要我(wo)們自(zi)定(ding)義驗(yan)證(zheng)(zheng)規(gui)則(ze)。自(zi)定(ding)義驗(yan)證(zheng)(zheng)規(gui)則(ze)有2個(ge)步(bu)驟:

1. 編寫規(gui)則驗證函(han)數:

var checkHostlist = (rule, value, callback) => {
      if (!value || !value.length) {
        callback(new Error('請選擇測試主機'))
      } else {
        callback()
      }
    }

可(ke)以看到,函(han)數需(xu)要傳入3個參數,分別是:

    rule—當(dang)前驗(yan)證規(gui)則對象

    value—當前表單值

&nbsp;   callback—回調(diao)函數(shu),調(diao)用(yong)后表(biao)示完成當(dang)前規則(ze)驗證。若驗證通過,直接調(diao)用(yong)callback();若驗證失敗,callback中傳入Error的實例。

2. 指(zhi)定規則驗(yan)證(zheng)函數:

host: [
 { required: true, message: '不能為空', trigger: 'blur' },
 { validator: checkHostList, trigger: 'blur' }
]

可以在編寫驗(yan)證規則時,通過(guo)validator屬性指定(ding)自(zi)定(ding)義的(de)規則驗(yan)證函(han)數。

總結

以上就是存儲管控系統表單驗(yan)(yan)證(zheng)技術(shu)介紹以及一些實踐經驗(yan)(yan)的(de)總(zong)結,包括prop設(she)置(zhi)方法、rules設(she)置(zhi)方法和自(zi)定(ding)義驗(yan)(yan)證(zheng)規則。我們(men)可以根(gen)據實際應用場景靈活組合。

文章來自個人專欄
文章 | 訂(ding)閱
0條評論
0 / 1000
請輸入你的評論
0
0