日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

三十四、深入Vue.js语法(中篇)

發布時間:2024/10/8 vue 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 三十四、深入Vue.js语法(中篇) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

@Author:Runsen
@Date:2020/6/15

人生最重要的不是所站的位置,而是內心所朝的方向。只要我在每篇博文中寫得自己體會,修煉身心;在每天的不斷重復學習中,耐住寂寞,練就真功,不畏艱難,奮勇前行,不忘初心,砥礪前行,人生定會有所收獲,不留遺憾 (作者:Runsen )

作者介紹:Runsen目前大三下學期,專業化學工程與工藝,大學沉迷日語,Python, Java和一系列數據分析軟件。導致翹課嚴重,專業排名中下。.在大學60%的時間,都在CSDN。決定今天比昨天要更加努力。我的征途是星辰大海!

文章目錄

  • v-on
  • 計數器
  • v-show
  • v-if
  • v-bind
  • v-for

v-on

v-on命令就是相當于js中的事件綁定,例如綁定click、mouseover等等監聽事件。官網說明文檔

直接使用指令v-on,使用簡化指令@

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><div id="app"><input type="button" value="v-on指令" v-on:click="doIt"><input type="button" value="v-on簡寫指令" @click="doIt"></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>var app = new Vue({el:"#app",data:{message:"Runsen is 20",},methods: {doIt:function(){alert("doIt")}},})</script> </body> </html>

計數器

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><div id="app"><div class="input-num"><button @click='add'>-</button><span>{{num}}</span><button @click='sub'>+</button></div></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>var app = new Vue({el:"#app",data:{num:1,},methods: {add:function(){if (this.num<10) {this.num++;} else {alert('最大值為10');}},sub:function(){if (this.num>0) {this.num--;} else {alert('最小值為0');}}},})</script> </body> </html>

v-show

v-show : 當flag為true,則顯示,如果flag為false,則隱藏。v-show 的特點:每次不會重新進行DOM的刪除和創建操作,只是切換了元素的 display:none 樣式

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><div id="app"><input type="button" value="切換顯示圖片" @click="changIsshow"><input type="button" value="age+1" @click="add"><img src="https://img-blog.csdnimg.cn/20200609152208864.png"v-show="isshow"><img src="https://img-blog.csdnimg.cn/20200609152208864.png"v-show="age>=20"></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>var app = new Vue({el:"#app",data:{isshow:false,age:17},methods: {changIsshow:function(){this.isshow = !this.isshow;},add:function(){this.age++;}},})</script> </body> </html>

v-if

v-if : 當flag為true,則顯示,如果flag為false,則隱藏。v-if 的特點:每次都會重新刪除或創建元素

body><div id="app"><input type="button" value="切換顯示" @click='changIsshow'><p v-if="isshow">runsen</p></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>var app = new Vue({el:"#app",data:{isshow:false,age:17},methods: {changIsshow:function(){this.isshow = !this.isshow;},},})</script> </body>

相同點:v-if與v-show都可以動態控制dom元素顯示隱藏

不同點:v-if顯示隱藏是將dom元素整個添加或刪除,而v-show隱藏則是為該元素添加css–display:none,dom元素還在。

v-bind

v-bind 用于處理 HTML 中的標簽屬性。標簽對內定義v-bind + 冒號 + 屬性=‘variable’,形如:

,作用是將屬性與數據進行單向綁定,只能將數據層中的屬性傳給綁定屬性。v-bind可縮寫成 :title=“title”

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><div id="app"><img v-bind:src="imgSrc" :alt="alt"><img :src="imgSrc1" :alt="alt"></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>new Vue({el: '#app',data: {imgSrc: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1592199194786&di=b2d5483f86b8b38fb2dd12e932eaa889&imgtype=0&src=http%3A%2F%2Fi0.hdslb.com%2Fbfs%2Farchive%2F839b48daee6bed189d49aa6eac912b353ce0db3d.jpg',imgSrc1: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1592199212627&di=28f4daed2069121c770cf4fa6f79c412&imgtype=0&src=http%3A%2F%2Fattachments.gfan.com%2Fforum%2Fattachments2%2Fday_111113%2F1111131811fe8b6d1575c620d7.jpg',alt: '我是美女'}});</script> </body> </html>

v-for

v-for指令常用于遍歷數組或者對象,然后依次渲染出指定的內容。同時,我們也知道,官方文檔也建議,在使用 v-for指令時,記得要加上 key屬性,方便提升應用性能。例如一個簡單的增刪Todo應用如下所示:

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title> </head> <body><div id="app"><input type="button" value="添加數據" @click="add"><input type="button" value="移除數據" @click="remove"><ul><li v-for="(item, index) in arr" > 第{{index+1}}個城市:{{item}}</li></ul><h2 v-for="(item, index) in person" :key="index">{{item.name}}</h2></div><script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script><script>new Vue({el: '#app',data() {return {arr:['北京','上海','廣州','武漢'],person:[{name:"Runsen"},{name:"Maoli"}]}},methods: {add:function(){this.person.push({name:"maoli"})},remove:function(){this.person.shift()}},});</script> </body> </html>

如果本文對你有幫助,大家可以點贊轉發一波,有錯誤大家可以評論指出,感謝!

大家繼續加油,未來可期!Runsen的征途是星辰大海!

與50位技術專家面對面20年技術見證,附贈技術全景圖

總結

以上是生活随笔為你收集整理的三十四、深入Vue.js语法(中篇)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。