亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

vue.js初學入門教程(1)

2019-11-20 08:36:22
字體:
來源:轉載
供稿:網友

Vue.js是當下很火的一個JavaScript MVVM庫,它是以數據驅動和組件化的思想構建的。相比于Angular.js,Vue.js提供了更加簡潔、更易于理解的API,使得我們能夠快速地上手并使用Vue.js。

0.MVVM

  什么是MVVM?就是Model-View-ViewModel。

ViewModel是Vue.js的核心,它是一個Vue實例。

不太懂也沒關系,慢慢就懂了。

1.基礎示例

代碼:

<!DOCTYPE html><html><head> <meta charset="utf-8"> <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" /> <title></title></head><body><div id="didi-navigator"> <ul> <li v-for="tab in tabs"> {{ tab.text }} </li> </ul> </div> <script src="js/vue.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> new Vue({ el: '#didi-navigator', data: { tabs: [ { text: '巴士' }, { text: '快車' }, { text: '專車' }, { text: '順風車' }, { text: '出租車' }, { text: '代駕' } ] } })  </script></body></html>

使用Vue的過程就是定義MVVM各個組成部分的過程的過程。

  ? 定義View

  ? 定義Model

  ? 創建一個Vue實例或"ViewModel",它用于連接View和Model 

2.數據綁定

2.1 插值

有時候只需渲染一次數據,后續數據變化不再關心,可以通過“*”實現:

<span>Text: {{*text}}</span>

雙大括號標簽會把里面的值全部當作字符串來處理,如果值是HTML片段,則可以使用三個大括號來綁定:

<div>Logo: {{{logo}}}</div>

Logo: ‘<span>DDFE</span>'

2.2 表達式

Mustache標簽也接受表達式形式的值。

3.指令(上)

v-if指令
v-show指令
v-else指令
v-for指令
v-bind指令
v-on指令
v-model指令

  v-if:是否渲染。

  v-show:肯定渲染,是否顯示。

  其中,v-show不支持<template語法>。一般來說,v-if有更高的切換消耗,而v-show有更高的初始渲染消耗。因此,如果需要頻繁地切換,則使用v-show較好;如果在運行時條件不大可能改變,則使用v-if較好。另外,將v-show用在組件上時,因為指令的優先級v-else會出現問題,可以用另一個v-show替換v-else。

3.1 關于v-for

  使用基礎可參看//www.49028c.com/article/96364.htm。

  補充:

  Vue.js增加了兩個方法觀測變化:$set、$remove。

3.1.1 應該盡量避免直接設置數據綁定的數組元素

  因為這些變化不會被Vue.js檢測到,因而也不會更新視圖渲染。這時,我們可以使用$set方法:

        demo.item.$set(0,{childMsg:'Changed!'})

  $remove是splice的語法糖,用于從目標數組中查找并刪除元素。

       demo.item.$remove(item)

3.1.2 有時可能需要用全新對象來替換數組

  Vue.js應盡可能地復用已有實例。如果沒有唯一的鍵供追蹤,則可以使用track-by=”$index”,它強制讓v-for進入原位更新模式:片段不會被移動,而是簡單地以對應索引的新值刷新。這時DOM節點不再映射數組元素順序的改變,不能同步臨時狀態(比如<input>元素的值),以及組件的私有狀態。

  因為js的限制,Vue.js不能檢測到下面數組的變化:

             直接用索引設置元素,如vm.items[0]={}。
            
修改數據的長度,如vm.items.length = 0。

  前一個問題可用$set解決,后一個問題只需用一個空數組替換items即可。

3.1.3 v-for可以和vue.js提供的內置過濾器(filterBy)或排序(orderBy)數據一起使用

  filterBy的例子: 

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <input v-model="searchText" /> <ul> <li v-for="user in users | filterBy searchText in 'name'">{{user.name}}</li> </ul> <script src="js/vue.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> var haha = new Vue({ el:'body', data:{ users:[ { name:'快車', tag:'1' }, { name:'慢車', tag:'2' }, { name:'好車', tag:'3' }, { name:'破車', tag:'4' } ] } }) </script> </body></html>

當我搜破車的時候:

orderBy的例子:

<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <ul> <li v-for="user in users | orderBy field reverse">{{user.name}}</li> </ul> <script src="js/vue.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> var demo = new Vue({ el:'body', data:{ field:'tag', reverse:false, // 顛倒 users:[ { name:'快車', tag:'2' }, { name:'慢車', tag:'3' }, { name:'好車', tag:'1' }, { name:'破車', tag:'0' } ] } }) </script> </body></html>

其他:

  v-bind指令可以縮寫為一個冒號,v-on指令可以縮寫為@符號。

  v-model指令后面可以添加number、lazy、debounce參數。

Number可以將用戶的輸入轉換為Number類型(如果原值的轉換結果為NaN,則返回原值)。
在input中時添加lazy將數據改到在change事件中發生。
Debounce可設置延時。 

參考:大神寫的://www.49028c.com/article/96426.htm《vue.js權威指南》

本文已被整理到了《Vue.js前端組件學習教程》,歡迎大家學習閱讀。

 以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品电影在线观看| 欧美—级高清免费播放| 97精品伊人久久久大香线蕉| 国产精品爱久久久久久久| 欧美日韩一区二区三区| 国产一区二区三区丝袜| 亚洲美女久久久| 欧美精品国产精品日韩精品| 中文字幕亚洲国产| 九九精品视频在线| 国产精品十八以下禁看| 久久久亚洲福利精品午夜| 欧美精品激情blacked18| 国产婷婷成人久久av免费高清| 欧美精品福利视频| 国产精品福利在线| 国产精品久久久一区| 欧美午夜影院在线视频| 欧美专区在线观看| 91a在线视频| 国产精品久久久久久av福利软件| 色综合久久天天综线观看| 日韩av电影在线网| 亚洲无av在线中文字幕| 国产欧美一区二区| 欧美成年人在线观看| 国产一区二区三区四区福利| 久久视频在线视频| 日韩美女主播视频| 国产精品美腿一区在线看| 国产精品一区久久| 97欧美精品一区二区三区| 亚洲人成亚洲人成在线观看| 久久精品在线播放| 国产精品成人一区二区| 亚洲成色777777在线观看影院| 国产精品v日韩精品| 日韩女优人人人人射在线视频| 中文字幕欧美日韩| 国产精品美女久久久久久免费| 日韩国产中文字幕| 亚洲第一福利网| 久久亚洲精品国产亚洲老地址| 精品亚洲aⅴ在线观看| 浅井舞香一区二区| 亚洲肉体裸体xxxx137| 国内精品一区二区三区| 日本精品视频在线播放| 国产精品自产拍在线观看| 91精品久久久久久久久不口人| 91成人在线视频| 国产精品1234| 粉嫩av一区二区三区免费野| 日韩精品视频在线观看网址| 亚洲欧美资源在线| 九九热99久久久国产盗摄| 国产精品成人aaaaa网站| 国产精国产精品| 69国产精品成人在线播放| 精品亚洲va在线va天堂资源站| 国语自产精品视频在线看抢先版图片| 亚洲精品日韩激情在线电影| 91在线视频导航| 日韩成人av网| 日韩欧美国产网站| 精品成人av一区| 国产精品扒开腿做爽爽爽男男| 中文字幕欧美日韩| 91精品国产综合久久香蕉的用户体验| 国产免费久久av| 日韩欧美在线国产| 中文亚洲视频在线| 国产成人免费av| 国产在线精品成人一区二区三区| 欧美激情视频网站| 日韩高清电影免费观看完整| 亚洲视频国产视频| 日韩专区中文字幕| 国产精品久久久久久久天堂| 国产精品一区二区三| 日韩高清电影免费观看完整版| 青青草原成人在线视频| 欧美成aaa人片在线观看蜜臀| 欧美日韩不卡合集视频| 亚洲精品美女视频| 国产精品第3页| 97国产精品视频人人做人人爱| 亚洲国产97在线精品一区| 成人羞羞国产免费| 成人免费在线视频网站| 国内精品视频在线| 欧美日韩国产成人在线观看| 国产精品欧美久久久| 亚洲国产精品专区久久| 欧美精品久久一区二区| 精品国产户外野外| 欧美一区二区三区图| 久久伊人免费视频| 精品国产精品自拍| 欧美激情精品久久久| 最近日韩中文字幕中文| 美女av一区二区三区| 综合网日日天干夜夜久久| 日韩成人av在线| 国产精品ⅴa在线观看h| 亚洲已满18点击进入在线看片| 久久综合国产精品台湾中文娱乐网| 国产精品亚洲第一区| 欧美洲成人男女午夜视频| 欧美老女人性生活| 国产精品人成电影在线观看| 色噜噜狠狠色综合网图区| 日韩欧美aⅴ综合网站发布| 不卡中文字幕av| 欧美精品videosex牲欧美| 国产精品色午夜在线观看| 亚洲性无码av在线| 久久成人这里只有精品| 欧美日韩在线观看视频小说| 国产欧美亚洲视频| 亚洲欧美在线一区二区| 欧美性猛交xxxx偷拍洗澡| 8090理伦午夜在线电影| 国模吧一区二区三区| 久久视频免费在线播放| 日韩一级黄色av| 另类天堂视频在线观看| 中文国产成人精品| 精品一区二区三区四区在线| 日韩最新中文字幕电影免费看| 中文字幕不卡av| 中文字幕在线看视频国产欧美| 国产精品久久久久91| 国产精品青青在线观看爽香蕉| 欧美激情极品视频| 日韩成人在线视频| 日韩美女视频免费看| 中文字幕久热精品视频在线| 亚洲一区二区少妇| 久久天堂电影网| 久久久久久久国产| 国语自产精品视频在免费| 日韩高清人体午夜| 在线色欧美三级视频| 欧美一区二区三区免费视| 亚洲欧美另类人妖| 国产成人精品在线视频| 91精品久久久久| 欧美一级电影免费在线观看| 亚洲国产一区二区三区四区| 日韩av电影手机在线| 久久影院免费观看| 九九久久久久99精品| 国内精久久久久久久久久人| 欧美成人免费全部观看天天性色| 九九精品视频在线观看| 久久久精品网站| 欧美激情视频网| 午夜免费在线观看精品视频| 国产亚洲精品成人av久久ww| 午夜剧场成人观在线视频免费观看| 国产中文字幕亚洲| 亚洲精品一区二区网址| 久久精品夜夜夜夜夜久久|