Rumah hujung hadapan web uni-app Cara menyembunyikan dan memaparkan komponen uniapp secara dinamik

Cara menyembunyikan dan memaparkan komponen uniapp secara dinamik

Apr 23, 2023 am 09:12 AM

Dengan pembangunan aplikasi mudah alih yang berterusan, pembangun perlu dapat menyembunyikan dan menunjukkan komponen berbeza secara dinamik apabila membina antara muka pengguna yang kaya. Dalam uniapp, kami boleh menggunakan pengikatan sifat dinamik dan pemaparan bersyarat komponen vue untuk mencapai matlamat ini. Dalam artikel ini, kita akan melihat cara yang berbeza untuk mencapai fungsi ini serta kebaikan dan keburukannya.

Pertama, mari kita lihat kaedah paling mudah dan paling langsung: menggunakan arahan v-show. Fungsi arahan v-show adalah untuk menentukan sama ada elemen dipaparkan berdasarkan nilai ungkapan. Apabila ungkapan menilai kepada benar, elemen akan dipaparkan jika tidak, elemen akan disembunyikan.

Dalam uniapp, menggunakan arahan v-show adalah sangat mudah Anda hanya perlu menambahkannya pada komponen yang perlu disembunyikan atau ditunjukkan dan menetapkan nilainya kepada pembolehubah Boolean. Berikut ialah contoh penggunaan arahan v-show untuk menyembunyikan dan menunjukkan butang:

<template>
  <button v-show="showBtn">点击我</button>
</template>

<script>
export default {
  data() {
    return {
      showBtn: true  // 默认显示按钮
    }
  },
  methods: {
    hideBtn() {
      this.showBtn = false;  // 隐藏按钮
    },
    showBtn() {
      this.showBtn = true;   // 显示按钮
    }
  }
}
</script>
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan arahan v-show pada butang dan mengikat nilainya kepada A atribut data pada rancanganBtn. Apabila nilai showBtn adalah benar, butang akan dipaparkan; apabila nilai showBtn adalah palsu, butang akan disembunyikan. Dengan memanggil kaedah hideBtn dan showBtn, kami boleh menukar nilai showBtn secara dinamik untuk menyembunyikan dan menunjukkan butang. Kelebihan arahan

v-show ialah ia sebenarnya tidak mengalih keluar elemen daripada DOM, sebaliknya menyimpan elemen dalam dokumen dan hanya menyembunyikannya melalui CSS. Ini bermakna apabila kita perlu memaparkan semula elemen tersebut, keadaan elemen tersebut akan dikekalkan. Walau bagaimanapun, kelemahan arahan v-show ialah ia memerlukan manipulasi DOM setiap kali elemen dikemas kini, yang mungkin menjejaskan prestasi.

Cara kedua untuk menyembunyikan dan menunjukkan elemen ialah menggunakan arahan v-if. Tidak seperti arahan v-show, arahan v-if menentukan sama ada elemen harus wujud dalam DOM berdasarkan nilai ungkapan. Apabila ungkapan dinilai kepada benar, elemen akan wujud dalam DOM jika tidak, elemen akan dialih keluar daripada DOM.

Dalam uniapp, menggunakan arahan v-if juga sangat mudah. Hanya tambahkannya pada komponen yang perlu disembunyikan atau ditunjukkan, dan tetapkan nilainya kepada pembolehubah Boolean. Berikut ialah contoh penggunaan arahan v-if untuk menyembunyikan dan menunjukkan butang:

<template>
  <button v-if="showBtn" @click="hideBtn">点击我</button>
</template>

<script>
export default {
  data() {
    return {
      showBtn: true  // 默认显示按钮
    }
  },
  methods: {
    hideBtn() {
      this.showBtn = false;  // 隐藏按钮
    },
    showBtn() {
      this.showBtn = true;   // 显示按钮
    }
  }
}
</script>
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan arahan v-if pada butang dan mengikat nilainya kepada A atribut data pada rancanganBtn. Apabila nilai showBtn adalah benar, butang akan wujud dalam DOM apabila nilai showBtn adalah palsu, butang akan dialih keluar daripada DOM. Dengan memanggil kaedah hideBtn dan showBtn, kami boleh menukar nilai showBtn secara dinamik untuk menyembunyikan dan menunjukkan butang.

Kelebihan arahan v-if ialah ia hanya melaksanakan operasi DOM yang diperlukan setiap kali elemen dikemas kini, yang bermakna ia mempunyai kurang kesan terhadap prestasi. Walau bagaimanapun, kelemahan arahan v-if ialah apabila elemen dipadamkan daripada DOM, keadaan elemen juga akan dipadamkan Apabila kita perlu memaparkan semula elemen, kita perlu mencipta semula elemen dan keadaannya, yang boleh menjejaskan prestasi.

Akhir sekali, mari kita lihat kaedah ketiga untuk menyembunyikan dan menunjukkan elemen: menggunakan arahan v-bind untuk menukar kelas elemen secara dinamik. Dengan menukar kelas elemen, kita boleh menukar gaya elemen, dengan itu menyembunyikan dan memaparkan elemen.

Dalam uniapp, kita boleh mengikat kelas dinamik kepada komponen dengan menggunakan arahan v-bind. Apabila nilai ungkapan adalah benar, komponen akan menambah kelas ini jika tidak, komponen akan memadamkan kelas ini. Berikut ialah contoh penggunaan arahan v-bind untuk menyembunyikan dan menunjukkan butang:

<template>
  <button :class="{ &#39;hidden&#39;: !showBtn }" @click="hideBtn">点击我</button>
</template>

<style>
.hidden {
  display: none;
}
</style>

<script>
export default {
  data() {
    return {
      showBtn: true  // 默认显示按钮
    }
  },
  methods: {
    hideBtn() {
      this.showBtn = false;  // 隐藏按钮
    },
    showBtn() {
      this.showBtn = true;   // 显示按钮
    }
  }
}
</script>
Salin selepas log masuk

Dalam contoh di atas, kami menggunakan arahan v-bind untuk mengikat kelas dinamik yang tersembunyi pada butang . Apabila nilai showBtn adalah palsu, kelas ini akan ditambahkan pada butang, dengan itu menyembunyikan butang apabila nilai showBtn adalah benar, kelas ini akan dipadamkan, dengan itu memaparkan butang. Pada masa yang sama, kita perlu mentakrifkan kelas .hidden dalam helaian gaya dan tetapkan butang untuk dipaparkan: tiada untuk menyembunyikan dan memaparkan elemen.

Berbeza dengan arahan v-show, kelebihan menggunakan arahan v-bind ialah kita boleh mencapai lebih banyak perubahan gaya dengan mengubah suai kelas elemen, bukan sekadar menukar keadaan paparan elemen. Kelemahannya ialah ia memerlukan penggunaan CSS untuk menggayakan elemen, yang mungkin mempunyai sedikit impak pada prestasi.

Ringkasnya, terdapat banyak cara untuk menyembunyikan dan memaparkan elemen Dalam uniapp, kita boleh memilih arahan v-show, arahan v-if atau menggunakan arahan v-bind untuk menukar kelas elemen secara dinamik. . Setiap kaedah mempunyai kelebihan dan kekurangannya sendiri, dan kita perlu memilih kaedah yang paling sesuai mengikut keperluan dan senario tertentu.

Atas ialah kandungan terperinci Cara menyembunyikan dan memaparkan komponen uniapp secara dinamik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana saya menggunakan API perkongsian sosial Uni-app? Bagaimana saya menggunakan API perkongsian sosial Uni-app? Mar 13, 2025 pm 06:30 PM

Artikel ini memperincikan bagaimana untuk mengintegrasikan perkongsian sosial ke dalam projek Uni-app menggunakan API Uni.share, meliputi persediaan, konfigurasi, dan ujian di seluruh platform seperti WeChat dan Weibo.

Bagaimanakah saya menggunakan preprocessors (sass, kurang) dengan uni-app? Bagaimanakah saya menggunakan preprocessors (sass, kurang) dengan uni-app? Mar 18, 2025 pm 12:20 PM

Artikel membincangkan menggunakan SASS dan kurang preprocessors dalam UNI-APP, memperincikan persediaan, faedah, dan penggunaan dwi. Fokus utama adalah pada konfigurasi dan kelebihan. [159 aksara]

Apakah jenis ujian yang boleh anda lakukan dalam aplikasi UNIAPP? Apakah jenis ujian yang boleh anda lakukan dalam aplikasi UNIAPP? Mar 27, 2025 pm 04:59 PM

Artikel ini membincangkan pelbagai jenis ujian untuk aplikasi UNIAPP, termasuk unit, integrasi, fungsional, UI/UX, prestasi, silang platform, dan ujian keselamatan. Ia juga meliputi memastikan keserasian silang platform dan mengesyorkan alat seperti JES

Bagaimana saya menggunakan API Animasi Uni-App? Bagaimana saya menggunakan API Animasi Uni-App? Mar 18, 2025 pm 12:21 PM

Artikel ini menerangkan cara menggunakan API Animasi Uni-App, memperincikan langkah-langkah untuk membuat dan menggunakan animasi, fungsi utama, dan kaedah untuk menggabungkan dan mengawal masa animasi.

Bagaimanakah anda dapat mengurangkan saiz pakej aplikasi UNIAPP anda? Bagaimanakah anda dapat mengurangkan saiz pakej aplikasi UNIAPP anda? Mar 27, 2025 pm 04:45 PM

Artikel ini membincangkan strategi untuk mengurangkan saiz pakej UNIAPP, memberi tumpuan kepada pengoptimuman kod, pengurusan sumber, dan teknik seperti pemisahan kod dan pemuatan malas.

Bagaimana saya menggunakan API Penyimpanan Uni-App (uni.setstorage, uni.getstorage)? Bagaimana saya menggunakan API Penyimpanan Uni-App (uni.setstorage, uni.getstorage)? Mar 18, 2025 pm 12:22 PM

Artikel ini menerangkan cara menggunakan API penyimpanan Uni-App (uni.setstorage, uni.getstorage) untuk pengurusan data tempatan, membincangkan amalan terbaik, penyelesaian masalah, dan menyoroti batasan dan pertimbangan untuk kegunaan yang berkesan.

Apakah struktur fail projek uni-app? Apakah struktur fail projek uni-app? Mar 14, 2025 pm 06:55 PM

Artikel ini memperincikan struktur fail projek uni-app, menerangkan direktori utama seperti biasa, komponen, halaman, statik, dan unicloud, dan fail penting seperti app.vue, main.js, manifest.json, halaman.json, dan uni.scss. Ia membincangkan bagaimana ini o

Apakah alat penyahpepijatan yang tersedia untuk pembangunan Uniapp? Apakah alat penyahpepijatan yang tersedia untuk pembangunan Uniapp? Mar 27, 2025 pm 05:05 PM

Artikel ini membincangkan alat penyahpepijatan dan amalan terbaik untuk pembangunan UNIPP, yang memberi tumpuan kepada alat seperti HBuildex, WeChat Developer Tools, dan Chrome Devtools.

See all articles