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

分享幾個可以助你提高效率的Vue指令

 更新時間:2022年05月23日 12:02:58   作者:幾何心涼  
vue是一款漸進(jìn)式JavaScript框架,漸進(jìn)式是指由淺到深,由簡單到復(fù)雜的使用vue框架,下面這篇文章主要給大家分享介紹了幾個可以助你提高效率的Vue指令,需要的朋友可以參考下

前言

很多使用Vue的同學(xué)往往最容易忽略的指令,由于在這里考慮到很多初學(xué)甚至還沒有開始接觸Vue的同學(xué)呢,在介紹v-clos之前呢就先以大家都熟知的v-model編寫小dem

v-model

相信大家對v-model并不陌生,簡單來講他就是用于在表單控件以及組建上創(chuàng)建的雙向數(shù)據(jù)綁定

首先我們搭建一個Vue的小環(huán)境,在一個html頁面中引入Vue.js

下面為大家?guī)硪粋€小栗子:

<body>
  <div id="app">
    <input type="text" v-model="message"><br>
    這里是文本框輸入的值——{{message}}
  </div>
</body>
<script>
  var app = new Vue({
    el: '#app',
    data: {
      message: '你好,幾何心涼!',
    },
  })
</script>

很簡單的例子運(yùn)行結(jié)果也無容置疑哈!

下面我們更加直白的看到雙向關(guān)系

1.我們通過在控制臺中去改變model中的數(shù)據(jù)

我們可以發(fā)現(xiàn)我們改變model中的message的值,View中的值就跟著改變了

2.我們通過在文本框改變View中的值查看model中的變化

我們發(fā)現(xiàn)當(dāng)我們通過文本框去改變View中的值的時候,其實我們的Model中的值也隨之改變了。

總結(jié)

通過上面實例你是不是對Vue的雙向綁定有了更近一步的了解呢,因為我們只能通過表單元素來對View的數(shù)據(jù)進(jìn)行改變,當(dāng)然我們其他的表單元素也是可以的我們就不一一列舉了;

v-model修飾符

1..lazy

我們在上面的動圖中可以看到通過v-model綁定的文本框只要是文本框的值發(fā)生變化了就會更新到Model的數(shù)據(jù)中,很多時候我們可能連貫實現(xiàn)某種功能但是會影響我們的性能,所以我們用到了.lazy修飾符

他會在我們文本框失去焦點(diǎn)的時候再幫我們將文本框的值同步給Model

<body>
  <div id="app">
   <h3>我是測試——{{message}}</h3>
<input type="text" v-model.lazy="message">
  </div>
</body>
<script>
  var app = new Vue({
    el: '#app',
    data: {
      message: '',
    },
  })
</script>

來看一下效果

2..number

我們還是拿文本框舉例,很多時候我們需要一些值讓用戶填寫而這個值可能希望他是數(shù)字我們用于計算,這個時候很多同學(xué)想到很多辦法,轉(zhuǎn)換呀、輸入后去判斷等等等,但其實v-model中有一個修飾符就可以幫助我們完成這個需求

我們還是通過一個小栗子來看一下,首先我們希望兩個文本框各輸入一個數(shù)值我們進(jìn)行求和

可以看一下結(jié)果

我們可以看到并不是我們想要的結(jié)果,他是作為拼接而不是求和,那么我們添加上.number修飾符來試試看

<body>
  <div id="app">
   <h3>我是求和——{{num1+num2}}</h3>
<input type="text" v-model.number="num1">
<input type="text" v-model.number="num2">
  </div>
</body>
<script>
  var app = new Vue({
    el: '#app',
    data: {
      message: '',
      num1: '',
      num2: '',

    },
  })
</script>

再來看看結(jié)果

3..trim

這個大家應(yīng)該不陌生相對用的比較多,就是去除空格的,但是他只會去除文本框兩端的空格,中間的不會去除哦

<body>
  <div id="app">
   <h3>我是測試——{{message}}</h3>
<input type="text" v-model.trim="message">
  </div>
</body>
<script>
  var app = new Vue({
    el: '#app',
    data: {
      message: '',

    },
  })
</script>

看下效果

小常識:

其實這里綁定在文本框上的v-model只不過是語法糖而已,使用 value 屬性和 input 事件完成了雙向的綁定,文本框的值變化了我們就觸發(fā)input事件改變我們綁定的值,而同時我們文本框的value值也在與message掛鉤

v-cloak

這個v-cloak究竟是做什么的,首先我們來看下面代碼

<body>
  <div id="app">
   <h3>我是測試——{{message}}</h3>
  </div>
</body>
<script>
  var app = new Vue({
    el: '#app',
    data: {
      message: '你好幾何心涼',
    },
  })
</script>

然后我們發(fā)現(xiàn)在頁面渲染的時候,會出現(xiàn)以下瞬間

一閃而過立馬

這種在我們實際開發(fā)過程中尤其是在我們網(wǎng)絡(luò)狀態(tài)不太好或者是后端接口響應(yīng)比較緩慢的時候出現(xiàn)這種現(xiàn)象,所以就用到我們的v-cloak
其實他的原理就是 display:none 大家應(yīng)該就明白了,也就是當(dāng)我們data中綁定的變量具備值之前Dom元素是隱藏的,所以就不會出現(xiàn)上述的問題了

附:v-bind和v-model的區(qū)別 

v-bind是一個單向數(shù)據(jù)綁定,映射關(guān)系:Model->View,我們不需要進(jìn)行額外的DOM操作,只需要進(jìn)行Model的操作就可以實現(xiàn)視圖的聯(lián)動更新。

v-model是一個雙向數(shù)據(jù)綁定,映射關(guān)系:View接受的數(shù)據(jù),傳給model,model的數(shù)據(jù)再傳給view。把Model綁定到View的同時也將View綁定到Model上,這樣就既可以通過更新Model來實現(xiàn)View的自動更新,也可以通過更新View來實現(xiàn)Model數(shù)據(jù)的更新。所以,當(dāng)我們用JavaScript代碼更新Model時,View就會自動更新,反之,如果用戶更新了View,Model的數(shù)據(jù)也自動被更新了。

總結(jié)

到此這篇關(guān)于幾個可以助你提高效率的Vue指令的文章就介紹到這了,更多相關(guān)提高效率的Vue指令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue實現(xiàn)簡易記事本

    Vue實現(xiàn)簡易記事本

    這篇文章主要為大家詳細(xì)介紹了Vue實現(xiàn)簡易記事本,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue2實現(xiàn)provide inject傳遞響應(yīng)式

    vue2實現(xiàn)provide inject傳遞響應(yīng)式

    在看element-ui的源碼的時候,注意到源碼里面有很多地方使用provide和inject的屬性,本文主要介紹了vue2實現(xiàn)provide inject傳遞響應(yīng)式,分享給大家,感興趣的可以了解一下
    2021-05-05
  • Vue2?Element?description組件列合并詳解

    Vue2?Element?description組件列合并詳解

    在使用Vue的時候經(jīng)常會涉及到表格的列合并,下面這篇文章主要給大家介紹了給大家Vue2?Element?description組件列合并的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-01-01
  • Vee-Validate的使用方法詳解

    Vee-Validate的使用方法詳解

    本篇文章主要介紹了Vee-Validate的使用方法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • vue-cli腳手架的安裝教程圖解

    vue-cli腳手架的安裝教程圖解

    vue-cli腳手架模板是基于node下的npm來完成安裝,這篇文章主要介紹了vue-cli腳手架的安裝教程圖解 ,需要的朋友可以參考下
    2018-09-09
  • Nuxt.js的路由跳轉(zhuǎn)操作(頁面跳轉(zhuǎn)nuxt-link)

    Nuxt.js的路由跳轉(zhuǎn)操作(頁面跳轉(zhuǎn)nuxt-link)

    這篇文章主要介紹了Nuxt.js的路由跳轉(zhuǎn)操作(頁面跳轉(zhuǎn)nuxt-link),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • VUE2中的MVVM模式詳解

    VUE2中的MVVM模式詳解

    這篇文章主要為大家介紹了VUE2中的MVVM模式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-05-05
  • vue 對象添加或刪除成員時無法實時更新的解決方法

    vue 對象添加或刪除成員時無法實時更新的解決方法

    這篇文章主要介紹了vue 對象添加或刪除成員時無法實時更新的解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • element編輯表單el-radio回顯之后無法選擇的問題解決

    element編輯表單el-radio回顯之后無法選擇的問題解決

    今天主要來談一下element-ui編輯表單中的el-radio回顯之后無法選擇的問題,主要涉及到vue的雙向綁定,以及element-ui編輯表單中的el-radio的默認(rèn)類型,感興趣的可以了解一下
    2021-08-08
  • vue實現(xiàn)打卡功能

    vue實現(xiàn)打卡功能

    這篇文章主要為大家詳細(xì)介紹了vue實現(xiàn)打卡功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08

最新評論