国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

Vue 2.0入門基礎知識之內部指令詳解

2019-11-19 15:10:08
字體:
來源:轉載
供稿:網友

1.Vue.js介紹

        當前前端三大主流框架:Angular、React、Vue。React前段時間由于許可證風波,使得Vue的熱度蹭蹭地上升。另外,Vue友好的API文檔更是一大特色。Vue.js是一個非常輕量級的工具,與其說是一個MVVM框架,不如說是一個js庫。Vue.js具有響應式編程和組件化的特點。響應式編程,即保持狀態和視圖的同步,狀態也可以說是數據吧;而其組件化的理念與React則一樣,即“一切都是組件,組件化思想方便于模塊化的開發,是前端領域的一大趨勢。

2.內部指令

2-1.v-if v-else v-show:前兩者一般配合使用,v-show的效果類似于v-if。

實例如下:

<body>  <div id="app">    <p v-if="flag">if</p>    <p v-else>else</p>    <p v-show="flag">show</p>  </div></body><script>  var vm= new Vue({    el:"#app",    data:{      flag:true    }  });</script>

DOM結構中,三個p標簽中的內容是否顯示在頁面中取決于flag的布爾值屬性。當flag為true時,if和show都會顯示,else也不會存在于DOM結構中。v-if和v-show的不同體現在:v-if是根據條件的值判斷是否加載,可以減輕服務器的壓力,但是缺點是當改變條件的值,頁面又要加載一次;v-show則無論條件的值是否為true,都會加載(若條件為true,則display屬性設置為其默認屬性,反之,設置為none)

2-2.v-for 循環指令

實例如下:

<body>  <div id="app">   <ol>     <li v-for="b in b">{{b}}</li>   </ol>  </div></body><script>  var vm= new Vue({    el:"#app",    data:{     b:['a','b','c',1,2]    }  });</script>

頁面會顯示5個li,插值的效果是li會顯示與數組b一 一對應的元素,v-for有點類似于for in循環

2-3  v-text v-html 文本(html字符串)指令

<body>  <div id="app">   <p v-text="msgText"></p>   <p v-html="msgHtml"></p>  </div></body><script>  var vm= new Vue({    el:"#app",    data:{     msgText:"China",     msgHtml:"<span>中國</span>"    }  });</script>

可以聯想到jquery的text()、html()。到現在,你會發現前面都是利用插值操作,即{{}},這種做法會在一定程度上影響性能。

2-4 v-on 綁定事件監聽器

實例如下:

<body>  <div id="app">   <button v-on:click="Hi()">Button</button>  </div></body><script>  var vm= new Vue({    el:"#app",    methods:{      Hi:function(){        alert("Hello World!")      }    }  });</script>

同理,類比jquery的on()方法,綁定事件用的,實例中v-on:click可以簡寫為@click。click可以替換成鼠標的其他操作,如mouseout、mouseover等等。

2-5 v-bind指令

實例如下:

<body>  <div id="app">    <a v-bind:style="{color:'red'}" :src="message">{{message}}</a>  </div></body><script>  var vm = new Vue({    el: "#app",    data: {      message: "前端工程師"    }  });</script>

效果為a標簽顯示紅色,且其src屬性為vm.message。v-bind指令主要用于設置html標簽的屬性,其簡寫形式為 v-bind:――>:

2-6 v-model 數據雙向綁定指令

實例如下:

<body>  <div id="app">    <p>{{message}}</p>    <input type="text" v-model="message">  </div></body><script>  var vm = new Vue({    el: "#app",    data: {      message: "前端工程師"    }  });</script>

當input輸入的值發生變化時,p標簽包含的內容也會隨之變化,且與前者保持一致。

2-7 v-pre 指令

實例如下:

<body>  <div id="app">    <p>{{message}}</p>    <p v-pre>{{message}}</p>  </div></body><script>  var vm = new Vue({    el: "#app",    data: {      message: "前端工程師"    }  });</script>

第一個p標簽輸出“前端工程師”,而第二個p標簽則會跳過vue編譯,輸出原始值,即{{message}}。

2-8 v-cloak指令

     v-cloak指令的作用是當DOM樹構建好完成頁面的渲染后才執行,且其須要與css一起使用

2-9 v-once指令

    v-once指令的作用是只有當DOM樹第一次渲染時起作用。

總結

以上所述是小編給大家介紹的Vue 2.0入門基礎知識之內部指令詳解,希望對大家有所幫助!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扎兰屯市| 湘阴县| 临江市| 渑池县| 江达县| 滨海县| 林周县| 江陵县| 沈阳市| 二手房| 岗巴县| 龙井市| 城固县| 桐城市| 宁远县| 六盘水市| 长阳| 石柱| 新郑市| 方正县| 大城县| 图木舒克市| 宣城市| 宿迁市| 曲靖市| 石泉县| 淳化县| 中阳县| 莱州市| 永清县| 达拉特旗| 桂阳县| 遂川县| 和平区| 张家川| 弋阳县| 广宁县| 屏山县| 锡林郭勒盟| 措勤县| 台南县|