宅男在线永久免费观看网直播,亚洲欧洲日产国码无码久久99,野花社区在线观看视频,亚洲人交乣女bbw,一本一本久久a久久精品综合不卡

全部
常見問題
產(chǎn)品動態(tài)
精選推薦

【Vue新手必看】ElementUI表單實(shí)戰(zhàn)教程,輕松掌握!

管理 管理 編輯 刪除

ElementUI表單

el的表單官網(wǎng)內(nèi)容很多,看了一眼覺得心累了。但實(shí)際上它使用起來非常的方便,el為我們封裝了各種組件,樣式也大眾。

一個簡單的案例

bb65f202312231059185670.png

代碼如下(使用時確保引入了相關(guān)的組件)

<template>
<el-form ref="form" :model="form" label-width="80px">
  <el-form-item label="用戶名"><!-- form-item用于顯示關(guān)聯(lián)的文件 -->
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item label="密碼">
    <el-input type="password" v-model="form.pwd"></el-input>
  </el-form-item>
      <el-form-item>
    <el-button type="primary" @click="onSubmit">登錄</el-button>
    <el-button>取消</el-button>
  </el-form-item>
</el-form>
</template>
<script>
  export default {
    data() {
      return {
        form: {
          name: '',
          pwd:''
        }
      }
    },
    methods: {
      onSubmit() {
        console.log('submit!');
      }
    }
  }
</script>

看起來還是挺多行是嗎?去掉些必要標(biāo)簽還有些聲明,剩下的是:el-form,el-input,el-form-item三個組件。el-form是必要的,對布局有影響,el-form-item是做為關(guān)聯(lián)表單元素的文字,el-input便是我們的輸入框了。布局已經(jīng)預(yù)設(shè),用這三個便可以是最基本的表單了。是否方便?

表單的主要組件

常用的表單組件,輸入框,下拉框,單選框,多選框,文本域,對應(yīng)的組件是:Form,FormItem,Input,Select,Option,Checkbox,Radio。

還有一些同樣是實(shí)用組件,開關(guān)(Switch)、日期選擇器(DatePicker),時間選擇器(TimePicker)單選框組(RadioGroup),多選框組(CheckboxGroup)等

表單組件的使用

不管哪一種組件都一樣,先main.js中引入模塊,然后在頁面中即可使用:

// main.js
import {Form,FormItem,Input,CheckboxGroup,Radio, RadioGroup,Switch} from 'element-ui';

Vue.use(Form)
Vue.use(RadioGroup)
Vue.use(Radio)
Vue.use(FormItem)
Vue.use(Input)
// ...需要哪些引入哪些

假設(shè)在form.vue中使用,代碼多了看了煩,我只寫一個下拉框、開關(guān)、文本域。(這叫拋磚引玉,xixi)

<template>
<el-form ref="form" :model="form" label-width="80px">
  
  <el-form-item label="活動區(qū)域">
      <!-- 記得使用v-model來綁定表單字段 -->
    <el-select v-model="form.region" placeholder="請選擇活動區(qū)域">
      <el-option label="區(qū)域一" value="shanghai"></el-option>
      <el-option label="區(qū)域二" value="beijing"></el-option>
    </el-select>
  </el-form-item>
  <el-form-item label="即時配送">
      <!-- 記得使用v-model來綁定表單字段 -->
    <el-switch v-model="form.delivery"></el-switch>
  </el-form-item>
  <el-form-item label="活動形式">
      <!-- 記得使用v-model來綁定表單字段 -->
    <el-input type="textarea" v-model="form.desc"></el-input>
  </el-form-item>
  <el-form-item>
    <el-button type="primary" @click="onSubmit">立即創(chuàng)建</el-button>
    <el-button>取消</el-button>
  </el-form-item>
</el-form>
</template>
<script>
  export default {
    data() {
      return {
        form: {
          region: '',// 區(qū)域
          delivery: false,// 是否及時配送
          desc: '' //活動形式描述
        }
      }
    },
    methods: {
      onSubmit() {
        console.log('submit!');
      }
    }
  }
</script>

效果如下

55a61202312231101157500.png

行內(nèi)的表單

不難發(fā)現(xiàn)我們的組件都是再一個組件站一行,如果要使組件變?yōu)樾袃?nèi)元素也肥腸簡單。給el-form組件添加:inline="true"的屬性即可(屬性前加冒號才會認(rèn)值為true是一個布爾,否將認(rèn)為是字符串)

<el-form :inline="true">
    <!--// 如此即可 -->
</el-form>

對齊方式

這里的對齊指的是label的文本對齊方式。同樣是加載el-form組件的label-position屬性中

label-position的可用值: left,right,top(top為label在上,組件再下的顯示,不在同一行)。如下

<el-form label-position="left">
    <!--// 如此即可 -->
</el-form>

表單驗(yàn)證

表單驗(yàn)證的關(guān)鍵點(diǎn)有三:

  1. el-form組件中添加:rules="規(guī)則組對象"屬性添加,值為驗(yàn)證規(guī)則的對象
  2. 表單組件添加prop屬性為組件指定驗(yàn)證規(guī)則。prop屬性加在el-form-item上
  3. 定義驗(yàn)證規(guī)則的對象

驗(yàn)證一般用于輸入框

如下代碼:

<template>    
<el-form ref="form" :rules="rules" :model="form" label-width="180px">
  <el-form-item label="活動名稱,長度限制" prop="name">
    <el-input v-model="form.name"></el-input>
  </el-form-item>
  <el-form-item label="url,類型限制" prop="u">
    <el-input v-model="form.url"></el-input>
  </el-form-item>
</el-form>
</template>
<script>
  export default {
    data() {
      return {
        form: {
          name: '',
          url:'',
        },
        rules:{
            name:[
                { required: true, message: '請輸入活動名稱', trigger: 'blur' },
                { min: 3, max: 5, message: '長度在 3 到 5 個字符', trigger: 'blur' }
            ],
            u:[
                { type: 'url', required: true, message: '必須為規(guī)范的url地址', trigger: 'change' }
            ]
        },
      }
    },

    }
  }
</script>

abb7c202312231102519867.png

重點(diǎn)提一下,如過要驗(yàn)證數(shù)字類型,那么。需要把v-model換成v-model.number!!! 切記 ?。?!

<el-form-item label="url,類型限制" prop="u">
    <!-- 加上.number修飾符才會把輸入值轉(zhuǎn)為數(shù)字類型 -->
    <el-input v-model.number="form.num"></el-input>
</el-form-item>

自定義的驗(yàn)證規(guī)則

自定義驗(yàn)證與預(yù)定義驗(yàn)證的不同在于一點(diǎn)(考考你,共有哪三個關(guān)鍵點(diǎn)):

自定義規(guī)則對象的編寫形式

<script>
export default {
    data() {
        let checkNum = (rules,val,callback)=>{
            rules // 這里會得到定義的校驗(yàn)對象的屬性
            if(!Number.isInteger(val)){
                // 如果要提示錯誤信息,那么通過第三個參數(shù)回調(diào)出去,參數(shù)值為Error實(shí)例
                callback(new Error('請輸入數(shù)值'))
            }
        }
        return {
           // 校驗(yàn)規(guī)則
            rules:{
	            u:[
                    { type: 'url', required: true, message: '必須為規(guī)范的url地址', trigger: 'change' },
                    // 添加一條自定義的驗(yàn)證,值為函數(shù)名
                    {validator:checkNum,targger:'change'}
    	        ],

	        },
        }
    }
}
</script>

表單內(nèi)組件尺寸控制

通過給el-form添加size屬性,來指定表單元素的尺寸。很簡單,如下

size的可用值:medium / small / mini

<el-form size="miniz">
</el-form>

總結(jié)form模塊的屬性

e50a0202312231104126732.png

form模塊的方法

Form Methods(官方文檔的,了解一下)

87652202312231104285909.png

如何使用這些方法?

<template>
	<el-form ref="f">
    </el-form>
</template>
<script>
    // 重置表單
    const from = this.$refs.f.resetFields()
</script>

form-item模塊的屬性

66635202312231105027429.png


請登錄后查看

CRMEB-慕白寒窗雪 最后編輯于2023-12-23 11:06:06

快捷回復(fù)
回復(fù)
回復(fù)
回復(fù)({{post_count}}) {{!is_user ? '我的回復(fù)' :'全部回復(fù)'}}
排序 默認(rèn)正序 回復(fù)倒序 點(diǎn)贊倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}} LV.{{ item.user_info.bbs_level || item.bbs_level }}

作者 管理員 企業(yè)

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest == 1? '取消推薦': '推薦'}}
{{item.is_suggest == 1? '取消推薦': '推薦'}}
沙發(fā) 板凳 地板 {{item.floor}}#
{{item.user_info.title || '暫無簡介'}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
打賞
已打賞¥{{item.reward_price}}
{{item.like_count}}
{{item.showReply ? '取消回復(fù)' : '回復(fù)'}}
刪除
回復(fù)
回復(fù)

{{itemc.user_info.nickname}}

{{itemc.user_name}}

回復(fù) {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}
打賞
已打賞¥{{itemc.reward_price}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回復(fù)' : '回復(fù)'}}
刪除
回復(fù)
回復(fù)
查看更多
打賞
已打賞¥{{reward_price}}
2598
{{like_count}}
{{collect_count}}
添加回復(fù) ({{post_count}})

相關(guān)推薦

快速安全登錄

使用微信掃碼登錄
{{item.label}} 加精
{{item.label}} {{item.label}} 板塊推薦 常見問題 產(chǎn)品動態(tài) 精選推薦 首頁頭條 首頁動態(tài) 首頁推薦
取 消 確 定
回復(fù)
回復(fù)
問題:
問題自動獲取的帖子內(nèi)容,不準(zhǔn)確時需要手動修改. [獲取答案]
答案:
提交
bug 需求 取 消 確 定
打賞金額
當(dāng)前余額:¥{{rewardUserInfo.reward_price}}
{{item.price}}元
請輸入 0.1-{{reward_max_price}} 范圍內(nèi)的數(shù)值
打賞成功
¥{{price}}
完成 確認(rèn)打賞

微信登錄/注冊

切換手機(jī)號登錄

{{ bind_phone ? '綁定手機(jī)' : '手機(jī)登錄'}}

{{codeText}}
切換微信登錄/注冊
暫不綁定
CRMEB客服

CRMEB咨詢熱線 咨詢熱線

400-8888-794

微信掃碼咨詢

CRMEB開源商城下載 源碼下載 CRMEB幫助文檔 幫助文檔
返回頂部 返回頂部
CRMEB客服