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

Vue學(xué)習(xí)之常用指令實(shí)例詳解

 更新時(shí)間:2020年01月06日 11:06:58   作者:theVicTory  
這篇文章主要介紹了Vue學(xué)習(xí)之常用指令,結(jié)合實(shí)例形式詳細(xì)分析了vue.js創(chuàng)建實(shí)例、常用指令及相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Vue常用指令。分享給大家供大家參考,具體如下:

1、創(chuàng)建一個(gè)vue實(shí)例

vue的一個(gè)特點(diǎn)就是數(shù)據(jù)驅(qū)動(dòng)界面,一旦對(duì)js中的數(shù)據(jù)進(jìn)行修改,界面中用到數(shù)據(jù)的地方也會(huì)立馬做出更改。為了對(duì)界面進(jìn)行操縱,需要先獲取到界面的標(biāo)簽元素,并實(shí)例化一個(gè)vue實(shí)例。

例如在HTML創(chuàng)建一個(gè)div:

<div id="app">
  <p>{{msg}}</p>
</div>

在js中將其實(shí)例化為vue對(duì)象:

  let app=new Vue({
    el:'#app',//標(biāo)簽的類名、id,用于獲取元素
    //以鍵值對(duì)的形式存放用到的數(shù)據(jù)成員
    data:{
      msg:'顯示的內(nèi)容'
    },
    //包含要用到的函數(shù)方法
    methods:{
    }
  });

這樣js中msg的內(nèi)容就會(huì)在p標(biāo)簽內(nèi)顯示出來(lái)。

2、vue常用指令

1、 v-model:將組件與變量進(jìn)行雙向綁定,當(dāng)組件數(shù)據(jù)修改時(shí),變量會(huì)隨之改變。它后面可加修飾符,例如.lazy,只有在標(biāo)簽中的值發(fā)生改變時(shí)才同步到變量,.trim過(guò)濾用戶輸入中的空格。

2、v-once:不允許修改數(shù)據(jù),例如HTML中有如下三個(gè)標(biāo)簽:

  <div id="app">
    <p v-once>{{msg}}</p>
    <p>{{msg}}</p>
    <input type="text" v-model="msg">
  </div>

在input框內(nèi)輸入內(nèi)容后,會(huì)傳到msg變量中,第二個(gè)p標(biāo)簽內(nèi)顯示的信息會(huì)隨著msg發(fā)生變化,而第一個(gè)帶有v-once的p標(biāo)簽則只會(huì)顯示msg的初始值,不會(huì)隨之變化。

3、v-if="表達(dá)式",根據(jù)表達(dá)式的結(jié)果來(lái)判斷,是true則渲染元素,false則將元素注釋掉

4、v-show與v-if類似,true就渲染,但是false并不是注釋掉,而是通過(guò)display:none;來(lái)將元素隱藏,如果需要來(lái)回切換,使用v-show更好。例如:  

<p v-if="show">顯示內(nèi)容</p>
<p v-if="hide">注釋內(nèi)容</p>
<p v-show="hide">v-show隱藏</p>

令show:true,hide:false,結(jié)果如下:

5、v-else、v-else-if與v-if連在一起使用構(gòu)成邏輯判斷,根據(jù)返回值決定是否顯示,不可以單獨(dú)或者分開(kāi)使用,例如:

<p>請(qǐng)輸入分值:</p>
<input type="text" v-model="score">
<p v-if="score>90">優(yōu)秀</p>
<p v-else-if="score>80">良好</p>
<p v-else-if="score>60">中等</p>
<p v-else>不及格</p>

測(cè)試結(jié)果為:

6、v-for用于遍歷元素,使用格式為v-for="(值,鍵) in 遍歷內(nèi)容",其遍歷的內(nèi)容可以是數(shù)組、對(duì)象、字符串,例如在js的data中有一個(gè)person對(duì)象,person:{name:'tony',age:15,sex:'男'},將其內(nèi)容在頁(yè)面遍歷輸出: 

<p v-for="(value,key) in person">
  {{key+':'+value}}
</p>

生成結(jié)果如下:

7、v-text:向標(biāo)簽內(nèi)注入數(shù)據(jù),并且覆蓋標(biāo)簽內(nèi)的其他內(nèi)容

8、v-html:向標(biāo)簽內(nèi)覆蓋注入HTML內(nèi)容作為其子元素。例如:

<div v-html="vhtml">標(biāo)簽內(nèi)原來(lái)內(nèi)容</div>

結(jié)果插入一個(gè)子div并將覆蓋原內(nèi)容:

9、v-bind:給標(biāo)簽綁定屬性、類、樣式等,可以縮寫為冒號(hào),例如:    

<!-- 完整語(yǔ)法 -->
<a v-bind:href="url" rel="external nofollow" rel="external nofollow" >...</a>
<!-- 縮寫 -->
<a :href="url" rel="external nofollow" rel="external nofollow" >...</a>

由于vue的界面元素都是由數(shù)據(jù)驅(qū)動(dòng)的,js代碼從服務(wù)器獲得的屬性、樣式等數(shù)據(jù)需要通過(guò)綁定加到HTML界面元素上,通過(guò)綁定可以更為靈活地選擇要添加屬性的元素。Vue并不是直接操縱元素的class,而是通過(guò)綁定一個(gè)數(shù)據(jù)到class上,然后通過(guò)數(shù)據(jù)驅(qū)動(dòng)class的有無(wú),從而改變頁(yè)面的顯示,這充分顯示了vue數(shù)據(jù)驅(qū)動(dòng)的特點(diǎn)。

例如給上面person對(duì)象中key為'name'的那一行信息綁定一個(gè)active類使其高亮顯示:

<!--通過(guò)v-for循環(huán)遍歷person數(shù)組,綁定class,如果鍵值為name,綁定的class='active'-->
<p v-for="(value,key) in person" :class="key==='name' ? 'active' : ''">
  {{key+':'+value}}
</p>

結(jié)果:

也可以使用如下方法來(lái)綁定一個(gè)類名,頁(yè)面會(huì)根據(jù)變量isActive與hasError的true或false來(lái)確定是否綁定active與text-danger類,甚至可以將active設(shè)為計(jì)算屬性,運(yùn)算后返回true/false。

注意:綁定的屬性可以用駝峰命名法或使用短橫線來(lái)連接,但使用短橫線要用引號(hào)引起來(lái)

<div class="static"
   v-bind:class="{ active: isActive, 'text-danger': hasError }">
</div>

10、v-on:給標(biāo)簽綁定函數(shù),可以縮寫為@,例如綁定一個(gè)點(diǎn)擊函數(shù)

<p>{{msg}}</p>
<button @click="changeContent()">change</button>

在Vue的methods中實(shí)現(xiàn)changeContent函數(shù):

  let app=new Vue({
    el:'#app',
    data:{
      msg:'第一次輸入信息',
    },
    methods:{
      changeContent(){
        this.msg="修改后的輸入信息";
      }
    }
  });

原頁(yè)面與點(diǎn)擊后:

Vue.js 為 v-on 提供了事件修飾符。修飾符是由.開(kāi)頭的指令后綴來(lái)表示的,用于對(duì)事件進(jìn)行約束。例如:

<!-- 阻止單擊事件繼續(xù)傳播 --> 
<a v-on:click.stop="doThis"></a>
<!-- 提交事件不再重載頁(yè)面 --> 
<form v-on:submit.prevent="onSubmit"></form> 
<!-- 修飾符可以串聯(lián)使用,并且使用的順序很重要 --> 
<a v-on:click.stop.prevent="doThat"></a> 
<!-- 添加事件監(jiān)聽(tīng)器時(shí)使用事件捕獲模式 --> 
<!-- 即元素自身觸發(fā)的事件先在此處處理,然后才交由內(nèi)部元素進(jìn)行處理 --> 
<div v-on:click.capture="doThis">...</div> 
<!-- 只當(dāng)在 event.target 是當(dāng)前元素自身時(shí)才觸發(fā)函數(shù) --> 
<!-- 即事件不從內(nèi)部元素觸發(fā) --> 
<div v-on:click.self="doThat">...</div>
<!-- 點(diǎn)擊事件將只會(huì)觸發(fā)一次 -->
<a v-on:click.once="doThis"></a>

除了點(diǎn)擊事件外,還有按鍵事件,例如按下鍵盤碼為13的按鈕時(shí)觸發(fā):

<input v-on:keyup.13="submit">

為了方便使用vue將一些常用按鍵重命名,可以使用事件修飾符來(lái)使用,包括:.enter、.delete、.tab、.space、.esc、.up、.down、.right、.left等,也可以自定義:

Vue.config.keyCodes.f1 = 112;

希望本文所述對(duì)大家vue.js程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • vue+element-ui JYAdmin后臺(tái)管理系統(tǒng)模板解析

    vue+element-ui JYAdmin后臺(tái)管理系統(tǒng)模板解析

    這篇文章主要介紹了vue+element-ui JYAdmin后臺(tái)管理系統(tǒng)模板解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • vue3+elementPlus?table中添加輸入框并提交校驗(yàn)

    vue3+elementPlus?table中添加輸入框并提交校驗(yàn)

    這篇文章主要介紹了vue3+elementPlus?table里添加輸入框并提交校驗(yàn),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-08-08
  • vue+elementUI動(dòng)態(tài)生成面包屑導(dǎo)航教程

    vue+elementUI動(dòng)態(tài)生成面包屑導(dǎo)航教程

    今天小編就為大家分享一篇vue+elementUI動(dòng)態(tài)生成面包屑導(dǎo)航教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • vue實(shí)現(xiàn)豎屏滾動(dòng)公告效果

    vue實(shí)現(xiàn)豎屏滾動(dòng)公告效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)豎屏滾動(dòng)公告效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 超簡(jiǎn)單易懂的vue組件傳值

    超簡(jiǎn)單易懂的vue組件傳值

    這篇文章主要為大家詳細(xì)介紹了vue組件傳值,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • 在vue3項(xiàng)目中使用新版高德地圖的完整步驟

    在vue3項(xiàng)目中使用新版高德地圖的完整步驟

    項(xiàng)目需求需要引入地圖,對(duì)于目前最新的Vue3.0,無(wú)論是百度/高德/騰訊地圖目前還沒(méi)有適配,只有Vue?2.x版本的:?目前只有谷歌地圖的Vue3.0適配,下面這篇文章主要給大家介紹了關(guān)于如何在vue3項(xiàng)目中使用新版高德地圖的完整步驟,需要的朋友可以參考下
    2023-02-02
  • vue實(shí)現(xiàn)彈窗翻頁(yè)多選效果

    vue實(shí)現(xiàn)彈窗翻頁(yè)多選效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)彈窗翻頁(yè)多選效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • 淺談VUE uni-app 模板語(yǔ)法

    淺談VUE uni-app 模板語(yǔ)法

    這篇文章主要介紹了uni-app 的模板語(yǔ)法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • 淺析vue 函數(shù)配置項(xiàng)watch及函數(shù) $watch 源碼分享

    淺析vue 函數(shù)配置項(xiàng)watch及函數(shù) $watch 源碼分享

    這篇文章主要介紹了vue 函數(shù)配置項(xiàng)watch及函數(shù) $watch 源碼分享 ,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-11-11
  • Vue編寫炫酷的時(shí)鐘插件

    Vue編寫炫酷的時(shí)鐘插件

    這篇文章主要為大家詳細(xì)介紹了Vue編寫炫酷的時(shí)鐘插件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08

最新評(píng)論