亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Vue數(shù)據(jù)綁定實(shí)例寫(xiě)法

 更新時(shí)間:2019年08月06日 16:31:48   作者:若羽。  
在本篇文章里小編給大家整理的是關(guān)于Vue數(shù)據(jù)綁定實(shí)例寫(xiě)法以及相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。

為什么綁定

簡(jiǎn)單的數(shù)據(jù)渲染,包括表達(dá)式、函數(shù)在內(nèi)。其實(shí)都只是在標(biāo)簽中渲染,如果遇到以下情況怎么辦呢:

需要在標(biāo)簽內(nèi)部進(jìn)行某種 "騷操作" 。

需要控制流來(lái)控制不同數(shù)據(jù)下的不同渲染效果。

需要渲染一個(gè)數(shù)組。

這時(shí)候簡(jiǎn)單渲染就不能很好的解決問(wèn)題了,怎么辦 ?

來(lái)一發(fā)數(shù)據(jù)綁定吧!

綁定是什么

在了解綁定是什么之前,先了解一下什么是指令:

在 " vue" 中,指令是帶有 v- 前綴的特殊屬性,用來(lái)修飾標(biāo)簽的(自定義組件在這里也統(tǒng)一歸為標(biāo)簽,因?yàn)槠涫褂梅绞胶驮鷺?biāo)簽一樣),其值的約束和模板語(yǔ)法一樣,支持表達(dá)式、變量。

指令會(huì)監(jiān)測(cè)其值的變化,并將其的變化反應(yīng)給所處的DOM

我們來(lái)看一下上一章最后的例子:

<h1>{{ if(msg == '1') return time }}</h1>

 

在這里我們是想利用控制流來(lái)控制是否顯示時(shí)間,但是很遺憾,模板語(yǔ)法并不支持js語(yǔ)法。

但是 " vue" 中有這樣一個(gè)指令來(lái)彌補(bǔ)模板語(yǔ)法不支持 js語(yǔ)法的遺憾:

v-if

下面看看修改后的代碼:

<h1 v-if="msg=='1'">{{ formatTime(time) }}</h1>

 

先將 msg的值賦值為1

然后再修改一下 msg的值看看:

什么也沒(méi)有顯示,因?yàn)槲覀?msg的值并不是 1。

v-if 指令很完美的解決了我們最開(kāi)始提出來(lái)的第二個(gè)問(wèn)題:

需要控制流來(lái)控制不同數(shù)據(jù)下的不同渲染效果。

讓我們回到最開(kāi)始的話題。

這就是指令,而在官方原生的指令中,有一個(gè)指令是專(zhuān)門(mén)用來(lái)綁定標(biāo)簽屬性的:

v-bind

命名很形象,bind 直譯就是綁定的意思。

如何綁定

這里利用 div標(biāo)簽展示一下 v-bind 的使用方式,用在其它標(biāo)簽上同理:

<div v-bind:屬性名="表達(dá)式"></div>

 

我們拿第一個(gè)問(wèn)題舉例實(shí)踐一下:

需要在標(biāo)簽內(nèi)部進(jìn)行某種 "騷操作"。

這里我們就根據(jù) isDark的值來(lái)確定時(shí)間顯示的背景色吧

當(dāng) isDark為 true 的時(shí)候,背景色變成黑色,文字變成白色。

當(dāng) isDark為 false的時(shí)候,背景色變成白色,文字變成黑色。

先來(lái)定義 isDark:

data() {
  return {
   msg: 'hello vue',
   time: new Date(),
   isDark: False
  }
 }

 

然后添加一下兩種條件下的樣式:

<style>
 .dark{
  background-color: black;
  color: white;
 }

 .light{
  background-color: white;
  color: black;
 }
</style>

 

接下來(lái)給 h1標(biāo)簽加上綁定指令:

<h1 v-bind:class="isDark ? 'dark' : 'light'">{{ formatTime(time) }}</h1>

 

效果如下:

我們將 isDark 的值修改成 true:

很完美的達(dá)到了所需求的效果。

這就是指令的魅力。

最后一個(gè)問(wèn)題

上述兩個(gè)指令解決了我們最初提出來(lái)三個(gè)問(wèn)題中的兩個(gè),那么剩下一個(gè)呢?

需要渲染一個(gè)數(shù)組。

當(dāng)我們需要渲染表格的時(shí)候就會(huì)遇到這個(gè)場(chǎng)景,如何去渲染一個(gè)數(shù)組呢?模板語(yǔ)法又并不支持這么復(fù)雜的操作。

請(qǐng)出本章最后一個(gè)指令:

v-for

嗯,還是很形象。js里面也有 for 嘛~

先看看它是做什么的:

v-for 會(huì)為數(shù)據(jù)源(綁定的列表)中的每一項(xiàng),生成一個(gè)同類(lèi)的標(biāo)簽。

然后看看怎么用,這里用 a 標(biāo)簽做說(shuō)明,其他標(biāo)簽類(lèi)似:

<!-- 寫(xiě)法1 -->

<a v-for="別名 in 數(shù)據(jù)源" v-bind:key="唯一標(biāo)識(shí)">{{ 別名.字段 }}</a>

<!-- 寫(xiě)法2 -->

<a v-for="(下標(biāo), 別名) in 數(shù)據(jù)源" v-bind:key="唯一標(biāo)識(shí)">{{ 別名.字段 }}</a>

 

因?yàn)樾掳姹镜?vue要求使用 v-for指令渲染的標(biāo)簽必須綁定一個(gè)key用做唯一標(biāo)識(shí),大多數(shù)情況下我們可以直接使用下標(biāo)來(lái)進(jìn)行標(biāo)識(shí)

繼續(xù)使用我們之前的代碼進(jìn)行演示,先定義一個(gè) url的數(shù)組:

data() {
  return {
   msg: 'hello vue',
   time: new Date(),
   isDark: true,
   urlList: [
    {
     text: '鏈接1',
     url: '#1'
    },

    {
     text: '鏈接2',
     url: '#2'
    },

    {
     text: '鏈接3',
     url: '#3'
    }
   ]
  }
 }

 

然后渲染安排一波:

<a v-for="(item, index) in urlList" v-bind:key="index" v-bind:href="item.url" rel="external nofollow" >{{item.text}}</a>

 

效果如下:

渲染的結(jié)果是三個(gè) a 標(biāo)簽,非常正確~

很完美的解決了最后一個(gè)問(wèn)題。

還有些什么指令呢?

官方還有其他的指令,這里再提一個(gè):

v-on

v-on 指令可以綁定事件,比如說(shuō)按鈕的點(diǎn)擊事件。

像上面切換背景的例子中,可以通過(guò)一個(gè)按鈕的點(diǎn)擊事件來(lái)修改 isDark的值,從而控制背景的改變。就不需要每次都手動(dòng)來(lái)修改下 isDark的值了。

感謝大家學(xué)習(xí)以上知識(shí)點(diǎn)內(nèi)容和對(duì)腳本之家的支持。

相關(guān)文章

  • vue傳值方式的十二種方法總結(jié)

    vue傳值方式的十二種方法總結(jié)

    這篇文章主要介紹了vue傳值方式的十二種方法總結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 詳解Vue 方法與事件處理器

    詳解Vue 方法與事件處理器

    本篇文章主要介紹了詳解Vue 方法與事件處理器 ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • vue中el-input綁定鍵盤(pán)按鍵(按鍵修飾符)

    vue中el-input綁定鍵盤(pán)按鍵(按鍵修飾符)

    這篇文章主要介紹了vue中el-input綁定鍵盤(pán)按鍵(按鍵修飾符),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Vue中video標(biāo)簽如何實(shí)現(xiàn)不靜音自動(dòng)播放

    Vue中video標(biāo)簽如何實(shí)現(xiàn)不靜音自動(dòng)播放

    最近在做大屏展示需要在一開(kāi)始播放引導(dǎo)視頻,產(chǎn)生自動(dòng)播放需求,下面這篇文章主要給大家介紹了關(guān)于Vue中video標(biāo)簽如何實(shí)現(xiàn)不靜音自動(dòng)播放的相關(guān)資料,需要的朋友可以參考下
    2023-01-01
  • vue3如何直接修改reactive定義的變量

    vue3如何直接修改reactive定義的變量

    這篇文章主要介紹了vue3如何直接修改reactive定義的變量問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • layui實(shí)際項(xiàng)目使用過(guò)程中遇到的兼容性問(wèn)題及解決

    layui實(shí)際項(xiàng)目使用過(guò)程中遇到的兼容性問(wèn)題及解決

    這篇文章主要介紹了layui實(shí)際項(xiàng)目使用過(guò)程中遇到的兼容性問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • element中datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周的方法

    element中datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周的方法

    最近項(xiàng)目中需要用到日期選擇器,所以這里給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于element中datepicker日期選擇器選擇周一到周日并實(shí)現(xiàn)上一周和下一周的相關(guān)資料,需要的朋友可以參考下
    2023-09-09
  • vue3中如何使用codemirror6增加代碼提示功能

    vue3中如何使用codemirror6增加代碼提示功能

    這篇文章主要給大家介紹了關(guān)于vue3中如何使用codemirror6增加代碼提示功能的相關(guān)資料,Codemirror是一個(gè)不錯(cuò)的Web代碼編輯庫(kù),可以方便簡(jiǎn)單的集成,需要的朋友可以參考下
    2023-08-08
  • vue3如何實(shí)現(xiàn)?6位支付密碼輸入框

    vue3如何實(shí)現(xiàn)?6位支付密碼輸入框

    微信、支付寶支付密碼時(shí)的密碼輸入框大家都很熟悉,本文主要介紹了vue3如何實(shí)現(xiàn)?6位支付密碼輸入框,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-04-04
  • 如何在JS文件中獲取Vue組件

    如何在JS文件中獲取Vue組件

    這篇文章主要介紹了如何在JS文件中獲取Vue組件,幫助大家更好的理解和學(xué)習(xí)前端知識(shí),感興趣的朋友可以了解下
    2020-09-09

最新評(píng)論