1. vue.js的v-if判斷數組有多少個
有6個。
v-if 條件渲染指令,根據其後表達式的bool值進行判斷是否渲染該元素;所以,v-if指令只渲染他身後表達式為true的元素;在這里引入v-show指令,因為二者的區別是v-show指令會渲染他身後表達式為false的元素,這樣的元素上會添加css代碼:style="display:none"; 將上面v-if的實例代碼改為v-show
v-show 與v-if類似,只是會渲染其身後表達式為false的元素,而且會給這樣的元素添加css代碼:style="display:none";
v-else 必須跟在v-if/v-show指令之後,不然不起作用;如果v-if/v-show指令的表達式為true,則else元素不顯示;如果v-if/v-show指令的表達式為false,則else元素顯示在頁面上;
v-for 類似JS的遍歷,用法為 v-for="item in items", items是數組,item為數組中的數組元素。
v-bind 這個指令用於響應地更新 HTML 特性,比如綁定某個class元素或元素的style樣式。
v-on 用於監聽指定元素的DOM事件,比如點擊事件。
2. Vue.js中常用指令有哪些
數據渲染:v-text、v-html、{{}}
v-for 渲染循環列表
v-on綁定事件
v-bind 綁定屬性
3. vue.js的v-if判斷數組多少個
直接上代碼比如
<li v-for ="i in custom">
</li>
上面是循環一個數組然後生成li,但是我想 實現 如果 index是0 就給 li 加個 class,大於0 就不加class怎麼做? 比如
<li v-for ="i in custom" v-if="{{$index === 0}}" class="hehe">
</li>
4. 如何利用Vue.js庫中的v-if內部指令判斷元素顯示
在 Vue.js ,使用v-if指令判斷元素顯示
<h1v-if="ok">Yes</h1>
<!--當ok為true時,該元素顯示,否則不顯示-->
在<template>中配合v-if條件渲染一整組
因為v-if是一個指令,需要將它添加到一個元素上。但是如果想切換多個元素,此時可以把一個<template>元素當做包裝元素,並在上面使用v-if。最終的渲染結果不會包含<template>元素。
<templatev-if="ok">
<h1>Title</h1>
<p>Paragraph1</p>
<p>Paragraph2</p>
</template>
v-if是「真正的」條件渲染,因為它會確保在切換過程中條件塊內的事件監聽器和子組件適當地被銷毀和重建。
v-if也是惰性的:如果在初始渲染時條件為假,則什麼也不做——直到條件第一次變為真時,才會開始渲染條件塊。
相比之下,v-show就簡單得多——不管初始條件是什麼,元素總是會被渲染,並且只是簡單地基於 CSS 進行切換。
一般來說,v-if有更高的切換開銷,而v-show有更高的初始渲染開銷。因此,如果需要非常頻繁地切換,則使用v-show較好;如果在運行時條件不太可能改變,則使用v-if較好。
5. 如何利用Vue.js庫中的v-if內部指令判斷元素顯示
Vue.js庫中帶有一些內部指令,有v-if、v-show、v-else、v-on等。其中,v-if是根據表達式的值判斷一個元素是生成或移除,如果判斷為true,就生成元素;否則,移除元素。下面利用一個實例說明v-if的用法,操作如下:
工具/原料
Vue.js
HBuilder
截圖工具
瀏覽器
方法/步驟
第一步,創建靜態頁面vif.html,為了表達v-if指令實例,添加title內容,如下圖所示:
第二步,引入Vue.js核心js文件
<script src="../js/vue.min.js" ></script>
如下圖所示:
第三步,在body元素內部插入一個div和p,並給div一個id值,p元素內添加一個v-if,值為boolean,內部內容為「歡迎使用Vue.js」,如下圖所示:
第四步,在<script></script>中編寫Vue.js代碼,設置el和data數據,預覽頁面,如下圖所示:
第五步,將data內boolean設置為false,設置完畢,進行查看效果,如下圖所示:
第六步,再次預覽頁面,發現「歡迎使用Vue.js」不顯示出來,如下圖所示:
6. Vue.js v-for中能不能嵌套使用v-if
可以使用 v-if。但是因為 v-if 的優先順序低於 v-for, 所以 v-if 可能依賴 v-for 創建的變數,所以沒有辦法使用 v-else。
7. 如何利用Vue.js庫中的v-if內部指令判斷元素顯示
v-show是通過其值為true或者false來決定所包含的元素是否顯示。舉例如下:HTML: 123JavaScript(Vue):var vm = new Vue({ el: '#app', data: { ok: true }});默認情況下運行結果會在頁面上顯示這個p元素,也就是會出現123字元串。當我們在控制台中使用vm.ok=false;將其值設置為false後。123字元串將立即消失,即p元素被隱藏了。
8. 如何利用Vue.js庫中的v-if內部指令判斷元素顯示
第一步,創建靜態頁面vtext.html,修改title顯示的內容並引入vue.js,
第二步,在body標簽元素內插入兩個span元素,在第一個span綁定v-text指令,第二個span中插入{{message}},
第三步,編寫JS代碼,綁定數據源message,
第四步,預覽靜態頁面vtext.html,發現{{message}}還是一樣,未變成賦的值,
第五步,在兩個span外層添加一個div,並將第一個span的id賦給div,再在第一個span標簽上綁定v-model,
第六步,再次預覽發現頁面中的{{message}}變為綁定的數據源,
9. Vue.js中v-if的一個小問題
v-if判斷的本質就是布爾值的true和false,只要能滿足條件是可以有運算符的。你這個是邏輯問題,假如books.length本身是0,books.length == 0得到的布爾值是true,而0的布爾值是false,你兩個判斷的依據不同,得到的結果自然不一樣。
10. 如何利用Vue.js庫中的v-if內部指令判斷元素顯示
<div id="example01">
<p v-if="male">Male</p>
<p v-if="female">Female</p>
<p v-if="age>25">Age:{{age}}</p>
<p v-if="name.indexOf('lin')>0">Name:{{name}}</p>
</div>
當age大於25時,Age那一行顯示,否則不進行顯示
當name包含'lin'時,顯示該行,否則不顯示