Rumah  >  Artikel  >  hujung hadapan web  >  Kemahiran muktamad rendering bersyarat Vue: Penjelasan terperinci tentang kelebihan dan kekurangan v-if, v-show, v-else, v-else-if dan analisis kes

Kemahiran muktamad rendering bersyarat Vue: Penjelasan terperinci tentang kelebihan dan kekurangan v-if, v-show, v-else, v-else-if dan analisis kes

王林
王林asal
2023-09-15 08:10:49774semak imbas

Kemahiran muktamad rendering bersyarat Vue: Penjelasan terperinci tentang kelebihan dan kekurangan v-if, v-show, v-else, v-else-if dan analisis kes

Nirvana rendering bersyarat Vue: Penjelasan terperinci tentang kelebihan dan kekurangan v-if, v-show, v-else, v-else-if dan analisis kes

Pengenalan:
Dalam pembangunan Vue, rendering bersyarat adalah sangat penting Satu ciri penting. Vue menyediakan beberapa arahan yang biasa digunakan untuk melaksanakan pemaparan bersyarat, termasuk v-if, v-show, v-else dan v-else-if. Arahan ini boleh memasukkan atau mengalih keluar elemen DOM secara dinamik berdasarkan sama ada ungkapan itu benar atau palsu. Artikel ini akan menerangkan secara terperinci cara menggunakan arahan ini, kelebihan dan kekurangannya, dan seterusnya menganalisisnya melalui kes sebenar.

1. Arahan v-if
Arahan v-if ialah arahan pemaparan bersyarat yang paling biasa digunakan dalam Vue. Ia menentukan sama ada untuk memaparkan elemen DOM berdasarkan sama ada ungkapan itu benar atau palsu. Apabila ungkapan itu benar, v-if akan memasukkan elemen DOM yang sepadan ke dalam halaman apabila ungkapan itu palsu, v-if akan mengalih keluar elemen DOM yang sepadan daripada halaman. Berikut ialah contoh penggunaan arahan v-if:

<template>
  <div>
    <p v-if="show">显示文本</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      show: true
    }
  }
}
</script>

Dalam contoh ini, apabila rancangan adalah benar, elemen DOM yang memaparkan teks akan dipaparkan apabila rancangan adalah palsu, elemen DOM akan dialih keluar.

Kebaikan dan keburukan arahan v-if:
Kelebihan:

  1. v-if arahan sesuai untuk elemen yang perlu kerap menukar keadaan paparan Ia akan memasukkan dan mengalih keluar DOM berdasarkan nilai ungkapan, dengan itu bertambah baik prestasi.
  2. Arahan v-if boleh digunakan dengan arahan v-else dan v-else-if untuk melaksanakan logik pemaparan bersyarat yang lebih kompleks.

Kelemahan: Arahan

  1. v-if akan memusnahkan dan membina semula DOM apabila bertukar, dan prestasinya agak rendah. Oleh itu, apabila terdapat banyak elemen yang memerlukan penukaran keadaan paparan yang kerap, adalah tidak sesuai untuk menggunakan arahan v-if Anda boleh mempertimbangkan untuk menggunakan arahan v-show.

2. Arahan v-show
Arahan v-show adalah serupa dengan arahan v-if Ia juga boleh menukar keadaan paparan elemen berdasarkan ungkapan benar atau salah. Perbezaannya ialah arahan v-show dilaksanakan dengan mengubah suai atribut paparan elemen, dan bukannya memasukkan dan mengalih keluar elemen DOM secara terus. Berikut ialah contoh penggunaan arahan v-show:

<template>
  <div>
    <p v-show="show">显示文本</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      show: true
    }
  }
}
</script>

Dalam contoh ini, apabila rancangan adalah benar, paparan: blok akan digunakan untuk memaparkan elemen DOM yang sepadan apabila rancangan adalah palsu, paparan: tiada akan digunakan untuk sembunyikan elemen DOM yang sepadan.

Kelebihan dan Kekurangan arahan v-show:
Kelebihan:

  1. Perintah v-show sesuai untuk elemen yang perlu kerap menukar keadaan paparan Memandangkan ia hanya mengubah suai atribut paparan elemen, prestasinya lebih tinggi .
  2. Arahan v-show boleh digunakan bersama dengan arahan v-else untuk melaksanakan logik pemaparan bersyarat yang mudah.

Kelemahan:

  1. Arahan v-show tidak menyokong arahan v-else-if, jadi menggunakan v-show akan menjadi rumit di bawah logik rendering bersyarat yang kompleks.

3. Arahan v-else dan v-else-if
Arahan v-else dan v-else-if ialah dua arahan tambahan dalam pemaparan bersyarat. Ia boleh digunakan dengan arahan v-if atau v-show untuk melaksanakan logik pemaparan bersyarat yang lebih kompleks. Berikut ialah contoh penggunaan arahan v-else dan v-else-if:

<template>
  <div>
    <p v-if="score < 60">不及格</p>
    <p v-else-if="score >= 60 && score < 80">及格</p>
    <p v-else>优秀</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      score: 85
    }
  }
}
</script>

Dalam contoh ini, teks yang berbeza akan dipaparkan mengikut nilai skor yang berbeza. Apabila skor kurang daripada 60, "Gagal" akan diberikan; apabila skor lebih besar daripada atau sama dengan 60 dan kurang daripada 80, "Lulus" akan diberikan, "Cemerlang" akan diberikan.

Kebaikan dan keburukan arahan v-else dan v-else-if:
Kebaikan:

  1. v-else dan v-else-if arahan boleh digunakan bersama-sama dengan arahan v-if untuk melaksanakan pemaparan bersyarat yang lebih kompleks logik, menjadikan kod lebih kompleks Jelas dan mudah dibaca.

Kelemahan:

  1. Arahan v-else dan v-else-if hanya boleh digunakan dengan arahan v-if dan tidak boleh digunakan dengan arahan v-show.

Analisis kes:
Berikut ialah kes khusus yang menunjukkan senario penggunaan, kelebihan dan keburukan arahan v-if, v-show, v-else, v-else-if:

<template>
  <div>
    <button @click="toggleViewType">切换视图类型</button>
    <div v-if="viewType === 'list'">
      <ul>
        <li v-for="item in list">{{ item }}</li>
      </ul>
    </div>
    <div v-else-if="viewType === 'grid'">
      <div v-for="item in list" class="grid-item">{{ item }}</div>
    </div>
    <div v-else>
      暂无数据
    </div>
    <div v-show="showMoreInfo">
      更多信息
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      list: ['A', 'B', 'C'],
      viewType: 'list',
      showMoreInfo: true
    }
  },
  methods: {
    toggleViewType() {
      this.viewType = this.viewType === 'list' ? 'grid' : 'list';
    }
  }
}
</script>

Dalam kes ini, dengan Klik butang untuk menukar jenis paparan untuk memaparkan kaedah paparan data yang berbeza. Apabila jenis paparan ialah 'senarai', senarai ul akan dipaparkan apabila jenis paparan adalah 'grid', satu set grid div akan dipaparkan apabila jenis paparan kosong, "Tiada data lagi" akan dipaparkan; Pada masa yang sama, dengan mengawal nilai showMoreInfo, anda boleh memutuskan sama ada untuk memberikan "maklumat lanjut".

Melalui kes ini, kita dapat melihat fleksibiliti, kelebihan dan keburukan menggunakan arahan v-if, v-show, v-else-if, dan v-else. Dalam pembangunan sebenar, kita boleh memilih arahan yang sesuai untuk melaksanakan operasi pemaparan bersyarat mengikut situasi tertentu.

Ringkasan:
Arahan pemaparan bersyarat Vue v-if, v-show, v-else, v-else-if sangat biasa digunakan dalam pembangunan Vue. Melalui penjelasan terperinci dan kajian kes arahan ini, kami memahami cara menggunakannya serta kelebihan dan kekurangannya. Dalam pembangunan sebenar, kita harus memilih arahan yang sesuai berdasarkan keperluan khusus untuk mencapai kesan pemaparan terbaik dan pengalaman pengguna.

Atas ialah kandungan terperinci Kemahiran muktamad rendering bersyarat Vue: Penjelasan terperinci tentang kelebihan dan kekurangan v-if, v-show, v-else, v-else-if dan analisis kes. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn