最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue的基本用法與常見指令

 更新時間:2017年08月15日 12:02:28   作者:ghostwu  
Vue.js是JavaScript MVVM(Model-View-ViewModel)庫,十分簡潔,Vue核心只關(guān)注視圖層,相對AngularJS提供更加簡潔、易于理解的API。接下來通過本文給大家介紹vue的基本用法與常見指令,感興趣的朋友一起看看吧

什么是vue?

Vue.js是JavaScript MVVM(Model-View-ViewModel)庫,十分簡潔,Vue核心只關(guān)注視圖層,相對AngularJS提供更加簡潔、易于理解的API。Vue盡可能通過簡單的API實現(xiàn)響應的數(shù)據(jù)綁定和組合的視圖組件。

vue是由尤雨溪開發(fā)的一款基于MVVM的框架,M->模型,V->視圖, 也就是說模型數(shù)據(jù)改變了,視圖也跟著改變, 視圖內(nèi)容改變,模型內(nèi)容也跟著改變, 業(yè)界稱之為雙向綁定,或者說雙向數(shù)據(jù)驅(qū)動,基于此特點,學習這個框架,跟jquery完全不同, 不要用DOM的思想來學習vue, 在vue里面幾乎不需要用到DOM操作,一切都是基于數(shù)據(jù)驅(qū)動.

如何使用vue?

現(xiàn)在vue已經(jīng)發(fā)布了2版本,為什么學1版本,如果想要深入的學習vue,了解和掌握個版本的異同是很有必要的。要想使用vue,首先必須引入vue,在客戶端(瀏覽器)可以通過script標簽引入,如果是服務端,通過import引入

一個基本的vue程序有哪些部分組成?

就像初學者學習jquery一樣,一個基本的jquery程序, 有 domReady, 選擇器,this綁定,事件綁定,屬性和樣式修改組成的,而vue的基本結(jié)構(gòu)如下:

window.onload = function () {
      var c = new Vue({
        el: '#box', //相當于選擇器
        data: {
          content: 'ghostwu tell you how to learn vue',
          msg : 'vue中的數(shù)據(jù)1',
          msg2 : 'vue中的數(shù)據(jù)2'
        }
      });
}

這段簡單的代碼,可以實現(xiàn)最基本的數(shù)據(jù)讀取和顯示功能. 

1,使用vue,先要實例化一個vue

2,構(gòu)造函數(shù)中,傳入字面量對象, data后面也是一個字面量對象,里面的數(shù)據(jù)可以自定義,按照json的格式

3,el: 表示要把data中的數(shù)據(jù)顯示在 el 后面跟的元素下面, 比如上面的例子, 就是把data中, content, msg, msg2的數(shù)據(jù)顯示在id 為 box的元素下面

具體怎么讀取呢?

<div id="box">
  {{content}}
  <br>
  {{msg}}
  <br>
  {{msg2}}
</div>

{{data中定義的鍵}}, 如{{content}} 讀取的就是vue實例 data里面的 content定義的值,所以{{content}}輸出 ghostwu tell you how to learn vue, 同理{{msg}}輸出vue中的數(shù)據(jù)1 ,

{{msg2}}輸出 vue中的數(shù)據(jù)2

如果我們需要讓數(shù)據(jù)顯示在不同的元素下面,可以定義多個vue實例

window.onload = function () {
      var c = new Vue({
        el: '#box', //相當于選擇器
        data: {
          content: 'ghostwu tell you how to learn vue',
          msg : 'vue中的數(shù)據(jù)1',
          msg2 : 'vue中的數(shù)據(jù)2'
        }
      });
      var c2 = new Vue({
        el: '#box2',
        data: {
          msg: 'this is a paragraphy'
        }
      });
      var c3 = new Vue({
        el: '#box3',
        data: {
          msg2: 'this is box3'
        }
      });
    }
<p id="box2">{{msg}}</p>
<div id="box">
  {{content}}
  <br>
  {{msg}}
  <br>
  {{msg2}}
</div>
 <div id="box3">{{msg2}}</div>

 指令:v-model  作用:實現(xiàn)數(shù)據(jù)的雙向驅(qū)動

window.onload = function () {
      var c = new Vue({
        el: "body",
        data: {
          msg: 'welcome to study vue!!!'
        }
      });
    }
<input type="text" v-model="msg" id="txt" />
  <input type="text" v-model="msg" id="txt2"/>
  <br/>
  {{msg}}
  <div class="box">
    {{msg}}
  </div>
  <div class="box">
    {{msg}}
  </div>
  <div class="box">
    {{msg}}
  </div>
  <div class="box">
    {{msg}}
  </div>

上例,如果修改data中msg的值,那么輸入框中v-model綁定的msg, 以及4個div中輸出的msg的值 都會隨著data中msg的值的變化而變化,這個就叫做M->V,模型M(data中的數(shù)據(jù)),

視圖V(html代碼).  模型改變,視圖V也跟著改變, 同樣的上面兩個input輸入框中的值任何一個改變了,data中的msg也會改變,4個div中的msg也跟著改變,這個就叫做V->M,視圖改變,模型數(shù)據(jù)也跟著改變.

data中可以定義哪些數(shù)據(jù)?

常見的字符串,整形數(shù)字,數(shù)組,布爾,對象類型都可以

window.onload = function () {
      var c = new Vue({
        el: 'body',
        data: {
          msg: 'this is a msg',
          msg2 : 'hello world!',
          arr : [ 100, 200, 300 ],
          flag : true,
          json : {
            key1 : '八戒',
            key2 : '悟空',
            key3 : '沙僧'
          },
          num : 100,
        }
      });
    }
{{msg}} <br/>
  {{msg2}} <br/>
  {{arr}} <br/>
  {{flag}} <br/>
  {{json}}<br/>
  {{num}}<br/>

輸出結(jié)果:

this is a msg 
hello world! 
100,200,300 
true 
[object Object]
100

對于json數(shù)據(jù),默認情況輸出的是object Object,實際使用中,我們肯定是不希望輸出這玩意, 所以,vue中提供了一個指令v-for

指令:v-for. 作用:循環(huán)數(shù)組與對象

window.onload = function () {
      var c = new Vue({
        el: '#box',
        data: {
          persons: {
            name1: '八戒',
            name2: '沙增',
            name3: '悟空'
          }
        }
      });
    }
<div id="box">
  <ul>
    <li v-for="value in persons">{{value}}</li>
  </ul>
  <ul>
    <li v-for="a in persons">{{a}}</li>
  </ul>
</div>

輸出結(jié)果:

八戒
沙增
悟空
八戒
沙增
悟空

v-for指令中, in前面的變量,就是當前需要輸出persons的每一項的值,他的名稱可以自定義.

v-for也可以循環(huán)數(shù)組

window.onload = function () {
      var c = new Vue({
        el : '#box',
        data : {
          arr : [ '張三', 100, '李四', 200 ]
        }
      });
    }

<ul id="box">
   <li v-for="value in arr">{{value}}</li>
 </ul>

輸出結(jié)果:

張三
100
李四
200

如果需要獲取當前數(shù)組項的索引,可以用{{$index}}

<ul id="box">
   <li v-for="value in arr">{{value}}----{{$index}}</li>
</ul>

輸出結(jié)果:

張三----0
100----1
李四----2
200----3

v-for還有另外幾種形式,輸出數(shù)組:

window.onload = function () {
      var c = new Vue({
        el : '#box',
        data : {
          persons : {
            name1 : "八戒",
            name2 : "悟空",
            name3 : "唐僧"
          }
        }
      });
    }
<ul id="box">
  <li v-for="value in persons">{{value}}---{{$index}}----{{$key}}</li>
  <hr/>
  <li v-for="value in persons">{{value}}---{{$index}}----{{$key}}</li>
  <hr/>
  <li v-for="(k,v) in persons">{{k}}----{{v}}---{{$index}}---{{$key}}</li>
</ul>

輸出結(jié)果:

八戒---0----name1
悟空---1----name2
唐僧---2----name3
八戒---0----name1
悟空---1----name2
唐僧---2----name3
name1----八戒---0---name1
name2----悟空---1---name2
name3----唐僧---2---name3

總結(jié)

以上所述是小編給大家介紹的vue的基本用法與常見指令,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 淺析從vue源碼看觀察者模式

    淺析從vue源碼看觀察者模式

    本篇文章主要介紹了vue源碼看觀察者模式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • 基于Vue實現(xiàn)手勢簽名

    基于Vue實現(xiàn)手勢簽名

    這篇文章主要為大家詳細介紹了基于Vue實現(xiàn)手勢簽名,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • vue3+elementPlus項目支持生成、設置默認附件方式

    vue3+elementPlus項目支持生成、設置默認附件方式

    這篇文章主要介紹了vue3+elementPlus項目支持生成、設置默認附件方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Vue3+TS+Vite+NaiveUI搭建一個項目骨架實現(xiàn)

    Vue3+TS+Vite+NaiveUI搭建一個項目骨架實現(xiàn)

    本文主要介紹了Vue3+TS+Vite+NaiveUI搭建一個項目骨架實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-06-06
  • vue中vue-router安裝與配置方法步驟詳解

    vue中vue-router安裝與配置方法步驟詳解

    vue-router是Vue.js官方的路由插件,它和vue.js是深度集成的,適合用于構(gòu)建單頁面應用,下面這篇文章主要給大家介紹了關(guān)于vue中vue-router安裝與配置方法的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 基于Vue3和element-plus實現(xiàn)登錄功能(最終完整版)

    基于Vue3和element-plus實現(xiàn)登錄功能(最終完整版)

    這篇文章主要介紹了基于Vue3和element-plus實現(xiàn)一個完整的登錄功能,本文結(jié)合示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-03-03
  • vue項目中掃碼支付的實現(xiàn)示例(附demo)

    vue項目中掃碼支付的實現(xiàn)示例(附demo)

    本文主要介紹了vue項目中掃碼支付的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • vue踩坑記-在項目中安裝依賴模塊npm install報錯

    vue踩坑記-在項目中安裝依賴模塊npm install報錯

    這篇文章主要介紹了vue踩坑記-在項目中安裝依賴模塊npm install報錯,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • Vue動態(tài)創(chuàng)建注冊component的實例代碼

    Vue動態(tài)創(chuàng)建注冊component的實例代碼

    這篇文章主要給大家介紹了關(guān)于Vue動態(tài)創(chuàng)建注冊component的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Vue具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-06-06
  • Vue 按鈕居中、按鈕居左、按鈕居右的實現(xiàn)代碼

    Vue 按鈕居中、按鈕居左、按鈕居右的實現(xiàn)代碼

    在 Vue 中,如果需要將按鈕居中顯示,可以使用 CSS 中的 `text-align: center` 屬性來實現(xiàn),本文通過實例代碼給大家介紹Vue 按鈕居中、按鈕居左、按鈕居右的實現(xiàn)代碼,感興趣的朋友一起看看吧
    2023-10-10

最新評論

定安县| 雅安市| 肇庆市| 醴陵市| 麟游县| 彰化县| 扶余县| 阳曲县| 三河市| 乌拉特后旗| 小金县| 石首市| 嫩江县| 扶余县| 玛沁县| 林州市| 泰州市| 教育| 崇州市| 沅陵县| 广昌县| 卢龙县| 巫溪县| 涿州市| 中方县| 香港 | 贵港市| 红河县| 全椒县| 尖扎县| 梁平县| 阿拉尔市| 北川| 阜阳市| 东安县| 尉犁县| 绍兴市| 凤凰县| 凤山市| 依兰县| 建始县|