欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue中判斷語(yǔ)句與循環(huán)語(yǔ)句基礎(chǔ)用法及v-if和v-for的注意事項(xiàng)詳解

 更新時(shí)間:2022年08月03日 11:00:52   作者:小余努力搬磚  
在Vue指令中,最經(jīng)常被用于做邏輯操作的指令,下面這篇文章主要給大家介紹了關(guān)于Vue中判斷語(yǔ)句與循環(huán)語(yǔ)句基礎(chǔ)用法及v-if和v-for注意事項(xiàng)的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下

一、判斷語(yǔ)句

v-if、v-else、v-else-if

v-if是判斷是否將DOM元素顯示出來(lái)

不滿(mǎn)足條件的元素,會(huì)直接刪除,不會(huì)存在瀏覽器上面

v-show

也是用來(lái)判斷,是否將DOM元素在頁(yè)面上顯示,但是與v-if有著區(qū)別,它的不顯示是通過(guò)display:none;實(shí)現(xiàn)的,還是存在瀏覽上。

   <div id="app">
        <h2 v-if="age<18">未成年</h2>
        <h2 v-else-if="age<60">壯年</h2>
        <h2 v-else>老年</h2>
        <h2 v-show="flag">show</h2>
        <h2 v-if="flag">if</h2>
    </div>
   
    <script src="./vue.js"></script>
    <script>
        let vm = new Vue({
            el:"#app",
            data(){
                return{
                    age:71,
                    flag:false//true會(huì)顯示,false不會(huì)顯示 
                }
            }
        })
    </script>

如下圖片顯示,不存在時(shí)v-if和v-show的顯示狀態(tài)

可以發(fā)現(xiàn)show是被display:none;影藏起來(lái)了

if已經(jīng)從這個(gè)世界上消失了

案例

這里用簡(jiǎn)單的if判斷,可以通過(guò)按鈕控制不同的輸入模式

這里也會(huì)出現(xiàn)一個(gè)細(xì)節(jié)上的問(wèn)題,因?yàn)閂ue會(huì)出現(xiàn)大量的復(fù)用情況,所以這里需要在input表單中設(shè)置一個(gè)key值,使其出現(xiàn)差別,在以輸入內(nèi)容的表單,切換后內(nèi)容會(huì)也會(huì)被取消掉。

   <div id="app">
        <span v-if="usname">
            <label for="uname">用戶(hù)名</label>
            <input type="text" id="username" placeholder="輸入用戶(hù)名" key="index">
        </span>
        <span v-else="usname">
            <label for="email">用戶(hù)名郵箱</label>
            <input type="text" id="email" placeholder="輸入郵箱" key="index1">
        </span>
        <button @click="usname=!usname">選擇</button>
    </div>
    <script src="./vue.js"></script>
    <script>
        let vm = new Vue({
            el:"#app",
            data(){
                return{
                    usname:true
                }
            }
        })
    </script>

二、循環(huán)語(yǔ)句

如下案例

遍歷數(shù)組

是通過(guò)循環(huán)來(lái)實(shí)現(xiàn)點(diǎn)擊變色,這里遍歷出了下標(biāo)和內(nèi)容,在頁(yè)面上顯示出來(lái)

v-for="(item,index) in list"

item值index索引

    <style>
        .active{
            color: red;
        }
    </style>
</head>
<body>
    <div id="app">
        <ul>
            <li :class="currentIndex==index?'active':''" @click="change(index)" v-for="(item,index) in list">{{index}}--{{item}}</li>
        </ul>
    </div>
    <script src="./vue.js"></script>
    <script>
        let vm = new Vue({
            el:'#app',
            data(){
                return {
                    currentIndex:0,
                    list:["海王","海賊王","火影忍者","復(fù)仇者聯(lián)盟"],
                }
            },
            methods:{
                change(index){
                    this.currentIndex=index
                }
            }
        })
    </script>
</body>

遍歷對(duì)象

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>
</head>
<body>
  <div id="app">
    <!-- 1.遍歷過(guò)程沒(méi)有使用index索引-->
    <!-- 格式為:(value, name) -->
    <ul>
      <li v-for="(item,key) in user" >{{key+"-"+item}}</li>
    </ul>
    <!-- 格式為:(value, name, index) -->
    <ul>
      <li v-for="(item,key,index) in user" >{{key+"-"+item+"-"+index}}</li>
    </ul>
 
  </div>
  <script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
  <script>
    const app = new Vue({
      el:"#app",
      data:{
        user:{
          name:"zzz",
          height:188,
          age:24
        }
      }
    })
  </script>
</body>
</html>

三、v-if和v-for的注意事項(xiàng)

如果將v-if和v-for 在同一個(gè)標(biāo)簽內(nèi)使用,會(huì)出現(xiàn)每次先循環(huán),在去判斷渲染,在性能上出現(xiàn)了浪費(fèi)

要注意這個(gè)細(xì)節(jié),在寫(xiě)代碼時(shí),可以將for包含到if判斷中,使其不在一個(gè)標(biāo)簽內(nèi),從而避免了同是使用的情況。

這里,還會(huì)出現(xiàn)一個(gè)問(wèn)題,如果使用index為索引,在渲染表單的時(shí)候就會(huì)出現(xiàn),表單添加,表單內(nèi)容沒(méi)有出現(xiàn)變化,需要自己起一個(gè)唯一標(biāo)志符。

附:根據(jù)某一個(gè)與待循環(huán)列表無(wú)關(guān)的屬性決定是否展示渲染后的數(shù)組對(duì)象時(shí),可以把 v-if 上移。

例子:根據(jù) isShow 屬性決定是否顯示 users 列表

users: [
        {'name': '111'},
        {'name': '222'},
        {'name': '333'},
        {'name': '444'}
      ],

isShow: true

改良前:

<ul>
  <li v-for="user in users" v-if="isShow">
    {{ user.name }}
  </li>
</ul>

改良后:

<ul v-if="isShow">
  <li v-for="user in users">
    {{ user.name }}
  </li>
</ul>

總結(jié)

到此這篇關(guān)于Vue中判斷語(yǔ)句與循環(huán)語(yǔ)句基礎(chǔ)用法及v-if和v-for的注意事項(xiàng)詳解的文章就介紹到這了,更多相關(guān)Vue判斷語(yǔ)句與循環(huán)語(yǔ)句用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue路由守衛(wèi)詳解

    Vue路由守衛(wèi)詳解

    路由導(dǎo)航守衛(wèi)提供了一些鉤子函數(shù),可以在路由導(dǎo)航過(guò)程中進(jìn)行攔截和控制,其中,beforeEach 導(dǎo)航守衛(wèi)可以在每次路由切換前被觸發(fā),本文給大家介紹Vue路由守衛(wèi)詳解,感興趣的朋友一起看看吧
    2023-10-10
  • 使用mint-ui開(kāi)發(fā)項(xiàng)目的一些心得(分享)

    使用mint-ui開(kāi)發(fā)項(xiàng)目的一些心得(分享)

    下面小編就為大家?guī)?lái)一篇使用mint-ui開(kāi)發(fā)項(xiàng)目的一些心得(分享)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-09-09
  • Vue 引入AMap高德地圖的實(shí)現(xiàn)代碼

    Vue 引入AMap高德地圖的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Vue 引入AMap高德地圖的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Vue Echarts實(shí)現(xiàn)可視化世界地圖代碼實(shí)例

    Vue Echarts實(shí)現(xiàn)可視化世界地圖代碼實(shí)例

    這篇文章主要介紹了Vue Echarts實(shí)現(xiàn)可視化世界地圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 基于elementUI豎向表格、和并列的案例

    基于elementUI豎向表格、和并列的案例

    這篇文章主要介紹了基于elementUI豎向表格、和并列的案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-10-10
  • 在?Vue?中使用?dhtmlxGantt?組件時(shí)遇到的問(wèn)題匯總(推薦)

    在?Vue?中使用?dhtmlxGantt?組件時(shí)遇到的問(wèn)題匯總(推薦)

    dhtmlxGantt一個(gè)功能豐富的甘特圖插件,支持任務(wù)編輯,資源分配和多種視圖模式,這篇文章主要介紹了在?Vue?中使用?dhtmlxGantt?組件時(shí)遇到的問(wèn)題匯總,需要的朋友可以參考下
    2023-03-03
  • Vue使用預(yù)渲染代替SSR的方法

    Vue使用預(yù)渲染代替SSR的方法

    這篇文章主要介紹了Vue使用預(yù)渲染代替SSR的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 案例實(shí)操vue事件修飾符帶你快速了解與應(yīng)用

    案例實(shí)操vue事件修飾符帶你快速了解與應(yīng)用

    這篇文章主要介紹了vue常見(jiàn)的事件修飾符,在平時(shí)無(wú)論是面試還是學(xué)習(xí)工作中都會(huì)經(jīng)常遇到的,本文就帶你快速上手,需要的朋友可以參考下
    2023-03-03
  • Vue頁(yè)面跳轉(zhuǎn)動(dòng)畫(huà)效果的實(shí)現(xiàn)方法

    Vue頁(yè)面跳轉(zhuǎn)動(dòng)畫(huà)效果的實(shí)現(xiàn)方法

    百度了好久都沒(méi)辦法實(shí)現(xiàn)vue中一個(gè)頁(yè)面跳到另一個(gè)頁(yè)面,甚至到google上搜索也是沒(méi)辦法的,最終還是找了高人親自指導(dǎo),所以下面這篇文章主要給大家介紹了關(guān)于Vue頁(yè)面跳轉(zhuǎn)動(dòng)畫(huà)效果的實(shí)現(xiàn)方法,需要的朋友可以參考下
    2018-09-09
  • 少女風(fēng)vue組件庫(kù)的制作全過(guò)程

    少女風(fēng)vue組件庫(kù)的制作全過(guò)程

    這篇文章主要給大家介紹了關(guān)于少女風(fēng)vue組件庫(kù)的制作全過(guò)程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評(píng)論