欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue.js事件處理器與表單控件綁定詳解

 更新時間:2017年03月20日 15:43:10   投稿:lijiao  
這篇文章主要為大家詳細介紹了Vue.js事件處理器與表單控件綁定詳解的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下

事件處理主要通過v-on這個指令來執(zhí)行。

事件監(jiān)聽及方法處理

1.簡單的可以直接內(nèi)嵌在頁面。

2.可以通過將方法定義在methods中,然后再v-on中執(zhí)行

3.可以通過綁定給函數(shù)傳遞參數(shù),還可以傳遞通過變量$event給函數(shù)傳遞原生DOM事件。

<div id="app-1">
 <button v-on:click="counter += 1">增加1</button>
 <p>這個按鈕被點擊了{{counter}}</p>
 <button v-on:click="great">great</button>
 <button @click="sya('hi')">say hi</button>
 <button @click="warn('form cannot be submit yet', $event)">submit</button>
</div>
<script type="text/javascript">
 var app1 = new Vue({
 el:'#app-1',
 data:{
 counter:0
 },
 methods:{
 great:function(event){
 alert('點擊數(shù)目為'+ this.counter);
 alert(event.target.tagName);
 },
 sya:function(message){
 alert(message);
 },
 warn:function(msg,event){
 if(event) event.preventDefault();
 alert(msg);
 }
 }
 })
</script>

事件修飾器

Vue.js 為 v-on 提供了 事件修飾符。通過由點(.)表示的指令后綴來調(diào)用修飾符。

.stop
.prevent
.capture
.self

<div id="app2">
<!-- 阻止單擊事件冒泡 -->
<a v-on:click.stop="doThis"></a>
<!-- 提交事件不再重載頁面 -->
<form v-on:submit.prevent="onSubmit"></form>
<!-- 修飾符可以串聯(lián) -->
<a v-on:click.stop.prevent="doThat"></a>
<!-- 只有修飾符 -->
<form v-on:submit.prevent></form>
<!-- 添加事件偵聽器時使用時間捕獲模式 -->
<div v-on:click.capture="doThis">...</div>
<!-- 只當事件在該元素本身(而不是子元素)觸發(fā)時觸發(fā)回調(diào) -->
<div v-on:click.self="doThat">...</div>
</div>

按鍵修飾符

在監(jiān)聽鍵盤事件時,我們經(jīng)常需要監(jiān)測常見的鍵值。 Vue 允許為 v-on 在監(jiān)聽鍵盤事件時添加按鍵修飾符:

<!-- 只有在 keyCode 是 13 時調(diào)用 vm.submit() -->
<input v-on:keyup.13="submit">

記住所有的 keyCode 比較困難,所以 Vue 為最常用的按鍵提供了別名:

<!-- 同上 -->
<input v-on:keyup.enter="submit">
<!-- 縮寫語法 -->
<input @keyup.enter="submit">

全部的按鍵別名:

enter
tab
delete (捕獲 “刪除” 和 “退格” 鍵)
esc
space
up
down
left
right

可以通過全局 config.keyCodes 對象自定義按鍵修飾符別名:

// 可以使用 v-on:keyup.f1
Vue.config.keyCodes.f1 = 112

表單控件綁定

通過前面的一些學習,我們知道v-model在輸入框中具有雙向響應功能。但 v-model 本質(zhì)上不過是語法糖,它負責監(jiān)聽用戶的輸入事件以更新數(shù)據(jù),并特別處理一些極端的例子。

//文本
<input type="text" v-model="message" placeholder="edit it">
<p>this message is {{message}}</p>
<hr>
//多行文本
<span>Multiline message is:</span>
<p style="white-space: pre">{{ message }}</p>
<br>
<textarea v-model="message" placeholder="add multiple lines"></textarea>
<hr>
//復選框
<input type="checkbox" id="checkbox" v-model="checked">
<label for="checkbox">{{ checked }}</label>
<hr>
<input type="checkbox" id="jack" value="Jack" v-model="checkedNames">
<label for="jack">Jack</label>
<input type="checkbox" id="john" value="John" v-model="checkedNames">
<label for="john">John</label>
<input type="checkbox" id="mike" value="Mike" v-model="checkedNames">
<label for="mike">Mike</label>
<br>
<span>Checked names數(shù)組: {{ checkedNames }}</span>
<hr>
//單選按鈕
<input type="radio" id="one" value="One" v-model="picked">
<label for="one">One</label>
<br>
<input type="radio" id="two" value="Two" v-model="picked">
<label for="two">Two</label>
<br>
<span>Picked: {{ picked }}</span>
<hr>
//選擇列表
<select v-model="selected">
 <option>A</option>
 <option>B</option>
 <option>C</option>
</select>
<span>Selected: {{ selected }}</span>
<hr>
<select v-model="mulselected" multiple>
 <option>A</option>
 <option>B</option>
 <option>C</option>
</select>
<br>
<span>Selected數(shù)組: {{ mulselected }}</span>

動態(tài)屬性

<input
 type="checkbox"
 v-model="toggle"
 v-bind:true-value="a"
 v-bind:false-value="b">
<p>toggle的值為{{toggle}}</p>
<input type="radio" v-model="pick" v-bind:value="a">
<select v-model="selected">
 <!-- 內(nèi)聯(lián)對象字面量 -->
 <option v-bind:value="{ number: 123 }">123</option>
</select>

修飾符

lay:在改變后才觸發(fā)

<input v-model.lazy="msg" >

number:將輸出字符串轉(zhuǎn)為Number類型

<input v-model.number="age" type="number">

trim:自動過濾用戶輸入的首尾空格

<input v-model.lazy.trim="msg" >

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • vue貨幣過濾器的實現(xiàn)方法

    vue貨幣過濾器的實現(xiàn)方法

    這篇文章主要為大家詳細介紹了vue貨幣過濾器的實現(xiàn)方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 解決vue 更改計算屬性后select選中值不更改的問題

    解決vue 更改計算屬性后select選中值不更改的問題

    下面小編就為大家分享一篇解決vue 更改計算屬性后select選中值不更改的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • vue-router 路由傳參用法實例分析

    vue-router 路由傳參用法實例分析

    這篇文章主要介紹了vue-router 路由傳參用法,結合實例形式分析了vue-router 路由傳參基本使用方法及操作注意事項,需要的朋友可以參考下
    2020-03-03
  • element?upload?鉤子函數(shù)的坑及解決

    element?upload?鉤子函數(shù)的坑及解決

    這篇文章主要介紹了element?upload?鉤子函數(shù)的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 詳解vue2.6插槽更新v-slot用法總結

    詳解vue2.6插槽更新v-slot用法總結

    在 2.6.0 中,我們?yōu)榫呙宀酆妥饔糜虿宀垡肓艘粋€新的統(tǒng)一的語法 (即 v-slot 指令)。這篇文章主要介紹了詳解vue2.6插槽更新v-slot用法總結,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Vue Spa切換頁面時更改標題的實例代碼

    Vue Spa切換頁面時更改標題的實例代碼

    本篇文章主要介紹了Vue Spa切換頁面時更改標題的實例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • vue基礎之使用get、post、jsonp實現(xiàn)交互功能示例

    vue基礎之使用get、post、jsonp實現(xiàn)交互功能示例

    這篇文章主要介紹了vue基礎之使用get、post、jsonp實現(xiàn)交互功能,結合實例形式分析了vue.js中get、post及jsonp針對本地文件、網(wǎng)絡接口實現(xiàn)交互功能相關操作技巧,需要的朋友可以參考下
    2019-03-03
  • Vue源碼解讀之Component組件注冊的實現(xiàn)

    Vue源碼解讀之Component組件注冊的實現(xiàn)

    這篇文章主要介紹了Vue源碼解讀之Component組件注冊的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-08-08
  • 使用vue構建多頁面應用的示例

    使用vue構建多頁面應用的示例

    這篇文章主要介紹了使用vue構建多頁面應用的示例,幫助大家更好的理解和使用vue,感興趣的朋友可以了解下
    2020-10-10
  • vue 實現(xiàn)在同一界面實現(xiàn)組件的動態(tài)添加和刪除功能

    vue 實現(xiàn)在同一界面實現(xiàn)組件的動態(tài)添加和刪除功能

    這篇文章主要介紹了vue 實現(xiàn)在同一界面實現(xiàn)組件的動態(tài)添加和刪除,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06

最新評論