99re热这里只有精品视频,7777色鬼xxxx欧美色妇,国产成人精品一区二三区在线观看,内射爽无广熟女亚洲,精品人妻av一区二区三区

Vant Field 輸入框

2022-05-31 11:57 更新

介紹

表單中的輸入框組件

引入

import Vue from 'vue';
import { Field } from 'vant';

Vue.use(Field);

代碼演示

基礎(chǔ)用法

可以通過(guò)v-model雙向綁定輸入框的值,通過(guò)placeholder設(shè)置占位提示文字

<!-- Field 是基于 Cell 實(shí)現(xiàn)的,可以使用 CellGroup 作為父元素來(lái)提供外邊框。 -->
<van-cell-group>
  <van-field v-model="value" placeholder="請(qǐng)輸入用戶名" />
</van-cell-group>
export default {
  data() {
    return {
      value: ''
    };
  }
}

自定義類型

根據(jù)type屬性定義不同類型的輸入框,默認(rèn)值為text

<!-- 輸入任意文本 -->
<van-field v-model="text" label="文本" />
<!-- 輸入手機(jī)號(hào),調(diào)起手機(jī)號(hào)鍵盤 -->
<van-field v-model="tel" type="tel" label="手機(jī)號(hào)" />
<!-- 允許輸入整數(shù),調(diào)起數(shù)字鍵盤 -->
<van-field v-model="digit" type="digit" label="整數(shù)" />
<!-- 允許輸入數(shù)字,調(diào)起全鍵盤 -->
<van-field v-model="number" type="number" label="數(shù)字" />
<!-- 輸入密碼 -->
<van-field v-model="password" type="password" label="密碼" />
export default {
  data() {
    return {
      tel: '',
      text: '',
      digit: '',
      number: '',
      password: ''
    };
  }
}
Tips: digit 類型從 2.4.2 版本開(kāi)始支持

禁用輸入框

通過(guò)readonly將輸入框設(shè)置為只讀狀態(tài),通過(guò)disabled將輸入框設(shè)置為禁用狀態(tài)

<van-cell-group>
  <van-field label="文本" value="輸入框只讀" readonly />
  <van-field label="文本" value="輸入框已禁用" disabled />
</van-cell-group>

顯示圖標(biāo)

通過(guò)left-icon和right-icon配置輸入框兩側(cè)的圖標(biāo),通過(guò)設(shè)置clearable在輸入過(guò)程中展示清除圖標(biāo)

<van-cell-group>
  <van-field
    v-model="value1"
    label="文本"
    left-icon="smile-o"
    right-icon="warning-o"
    placeholder="顯示圖標(biāo)"
  />
  <van-field
    v-model="value2"
    clearable
    label="文本"
    left-icon="music-o"
    placeholder="顯示清除圖標(biāo)"
  />
</van-cell-group>
export default {
  data() {
    return {
      value1: '',
      value2: '123'
    };
  }
};

錯(cuò)誤提示

設(shè)置required屬性表示這是一個(gè)必填項(xiàng),可以配合error或error-message屬性顯示對(duì)應(yīng)的錯(cuò)誤提示

<van-cell-group>
  <van-field
    v-model="username"
    error
    required
    label="用戶名"
    placeholder="請(qǐng)輸入用戶名"
  />
  <van-field
    v-model="phone"
    required
    label="手機(jī)號(hào)"
    placeholder="請(qǐng)輸入手機(jī)號(hào)"
    error-message="手機(jī)號(hào)格式錯(cuò)誤"
  />
</van-cell-group>

插入按鈕

通過(guò) button 插槽可以在輸入框尾部插入按鈕

<van-field
  v-model="sms"
  center
  clearable
  label="短信驗(yàn)證碼"
  placeholder="請(qǐng)輸入短信驗(yàn)證碼"
>
  <van-button slot="button" size="small" type="primary">發(fā)送驗(yàn)證碼</van-button>
</van-field>

格式化輸入內(nèi)容

通過(guò)formatter屬性可以對(duì)輸入的內(nèi)容進(jìn)行格式化

<van-field
  v-model="value"
  label="文本"
  :formatter="formatter"
  placeholder="格式化輸入內(nèi)容"
/>
export default {
  data() {
    return {
      value: ''
    };
  },
  methods: {
    formatter(value) {
      // 過(guò)濾輸入的數(shù)字
      return value.replace(/\d/g, '');
    }
  }
}

高度自適應(yīng)

對(duì)于 textarea,可以通過(guò)autosize屬性設(shè)置高度自適應(yīng)

<van-field
  v-model="message"
  rows="1"
  autosize
  label="留言"
  type="textarea"
  placeholder="請(qǐng)輸入留言"
/>

顯示字?jǐn)?shù)統(tǒng)計(jì)

設(shè)置maxlength和show-word-limit屬性后會(huì)在底部顯示字?jǐn)?shù)統(tǒng)計(jì)

<van-field
  v-model="message"
  rows="2"
  autosize
  label="留言"
  type="textarea"
  maxlength="50"
  placeholder="請(qǐng)輸入留言"
  show-word-limit
/>

輸入框內(nèi)容對(duì)齊

通過(guò)input-align屬性可以設(shè)置輸入框內(nèi)容的對(duì)齊方式,可選值為center、right

<van-field
  v-model="value"
  :label="文本"
  :placeholder="輸入框內(nèi)容右對(duì)齊"
  input-align="right"
/>

API

Props

參數(shù)說(shuō)明類型默認(rèn)值
label輸入框左側(cè)文本string-
value當(dāng)前輸入的值number | string-
type輸入框類型, 可選值為 tel digit
number textarea password 等
stringtext
size大小,可選值為 largestring-
maxlength輸入的最大字符數(shù)number | string-
placeholder占位提示文字string-
border是否顯示內(nèi)邊框booleantrue
disabled是否禁用輸入框booleanfalse
readonly是否只讀booleanfalse
required是否顯示表單必填星號(hào)booleanfalse
clearable是否啟用清除控件booleanfalse
clickable是否開(kāi)啟點(diǎn)擊反饋booleanfalse
is-link是否展示右側(cè)箭頭并開(kāi)啟點(diǎn)擊反饋booleanfalse
autofocus是否自動(dòng)聚焦,iOS 系統(tǒng)不支持該屬性booleanfalse
show-word-limit v2.2.8是否顯示字?jǐn)?shù)統(tǒng)計(jì),需要設(shè)置maxlength屬性booleanfalse
error是否將輸入內(nèi)容標(biāo)紅booleanfalse
formatter v2.4.2輸入內(nèi)容格式化函數(shù)Function-
arrow-direction v2.0.4箭頭方向,可選值為 left up downstringright
error-message底部錯(cuò)誤提示文案,為空時(shí)不展示string''
label-class左側(cè)文本額外類名any-
label-width左側(cè)文本寬度,默認(rèn)單位為pxnumber | string90px
label-align左側(cè)文本對(duì)齊方式,可選值為 center rightstringleft
input-align輸入框內(nèi)容對(duì)齊方式,可選值為 center rightstringleft
error-message-align錯(cuò)誤提示文案對(duì)齊方式,可選值為 center rightstringleft
autosize是否自適應(yīng)內(nèi)容高度,只對(duì) textarea 有效,
可傳入對(duì)象,如 { maxHeight: 100, minHeight: 50 },
單位為px
boolean | objectfalse
left-icon左側(cè) 圖標(biāo)名稱 或圖片鏈接string-
right-icon右側(cè) 圖標(biāo)名稱 或圖片鏈接string-

Events

除下列事件外,F(xiàn)ield 默認(rèn)支持 Input 標(biāo)簽所有的原生事件

事件說(shuō)明回調(diào)參數(shù)
input輸入框內(nèi)容變化時(shí)觸發(fā)value: 輸入框當(dāng)前值
focus輸入框獲得焦點(diǎn)時(shí)觸發(fā)event: Event
blur輸入框失去焦點(diǎn)時(shí)觸發(fā)event: Event
clear點(diǎn)擊清除按鈕時(shí)觸發(fā)event: Event
click點(diǎn)擊時(shí)觸發(fā)event: Event
click-left-icon點(diǎn)擊左側(cè)圖標(biāo)時(shí)觸發(fā)event: Event
click-right-icon點(diǎn)擊右側(cè)圖標(biāo)時(shí)觸發(fā)event: Event

方法

通過(guò) ref 可以獲取到 Field 實(shí)例并調(diào)用實(shí)例方法,詳見(jiàn) 組件實(shí)例方法

方法名說(shuō)明參數(shù)返回值
focus獲取輸入框焦點(diǎn)--
blur取消輸入框焦點(diǎn)--

Slots

名稱說(shuō)明
label自定義輸入框標(biāo)簽
input自定義輸入框,使用此插槽后,與輸入框相關(guān)的屬性和事件將失效
left-icon自定義輸入框頭部圖標(biāo)
right-icon自定義輸入框尾部圖標(biāo)
button自定義輸入框尾部按鈕


實(shí)例演示

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)