


Bagaimana untuk menetapkan ketinggian swiper secara dinamik dalam uniapp
Swiper ialah komponen yang kerap digunakan dalam banyak projek pembangunan uniapp. Ia menyediakan bekas paparan gelongsor yang boleh melaksanakan fungsi dengan mudah seperti karusel imej dan paparan pengiklanan. Walau bagaimanapun, dalam projek sebenar, kita selalunya perlu menetapkan ketinggian Swiper secara dinamik mengikut ketinggian kandungan untuk menyesuaikan diri dengan perubahan kandungan. Jadi, bagaimana untuk menetapkan ketinggian Swiper secara dinamik dalam uniapp?
1. Kira ketinggian Swiper
Dalam projek sebenar, kita boleh memasukkan komponen Swiper melalui bekas paparan lain (seperti div) untuk mendapatkan ketinggian Swiper yang diperlukan. Tambahkan semua kandungan yang terkandung dalam Swiper pada bekas dan kira ketinggian, supaya ketinggian Swiper boleh ditetapkan secara dinamik untuk menyesuaikan diri dengan perubahan kandungan.
Kod contoh:
<template> <view> <div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide">内容1</div> <div class="swiper-slide">内容2</div> <div class="swiper-slide">内容3</div> </div> </div> </view> </template> <script> export default { onReady() { this.calcHeight() }, methods: { //计算高度 calcHeight() { let _this = this setTimeout(() => { uni.createSelectorQuery() .in(this) .select('.swiper-container') .boundingClientRect((rect) => { _this.swiperHeight = rect.height }) .exec() }, 200) } }, data() { return { swiperHeight: 0 } } } </script> <style> .swiper-container { height: {{swiperHeight}}px; } </style>
Dalam kod di atas, kami mula-mula mencipta komponen Swiper dalam templat dan bungkus komponen ini dalam bekas div, dan kemudian dalam bekas Swiper A swiper- gaya bekas ditambahkan pada kelas untuk menetapkan ketinggian Swiper. Seterusnya, selepas komponen Swiper dimuatkan, kami memperoleh ketinggian bekas dan menyimpannya ke data komponen (iaitu, pembolehubah swiperHeight) dengan menggunakan fungsi uni.createSelectorQuery(). Akhir sekali, kami menetapkan ketinggian Swiper melalui pembolehubah dalam helaian gaya untuk mencapai kesan menetapkan ketinggian secara dinamik.
2. Gunakan arahan tersuai
Selain kaedah di atas, anda juga boleh menetapkan ketinggian Swiper secara dinamik melalui arahan tersuai yang disediakan oleh uniapp. Mula-mula, gunakan arahan v-swiper-height dalam komponen dan nyatakan nama kelas kontena yang ketinggiannya perlu dikira. Kemudian, kami mentakrifkan fungsi kemas kini dalam arahan, di mana kami mengira ketinggian yang diperlukan oleh Swiper dan menggunakan el.style.height untuk menetapkan ketinggian Swiper, dengan itu mencapai kesan menetapkan ketinggian secara dinamik.
Kod sampel:
<template> <swiper class="my-swiper" v-swiper-height=".my-swiper"> <swiper-item>内容1</swiper-item> <swiper-item>内容2</swiper-item> <swiper-item>内容3</swiper-item> </swiper> </template> <script> export default { directives: { //自定义指令 swiperHeight: { update(el, binding) { uni.createSelectorQuery() .in(this) .select(binding.value) .boundingClientRect((rect) => { el.style.height = rect.height + 'px' }) .exec() } } } } </script> <style> .my-swiper { height: auto; } </style>
Dalam kod di atas, kami mula-mula mencipta komponen Swiper dalam templat dan membalut komponen ini dalam kelas bekas tersuai (my-swiper) tengah. Kemudian, kami menggunakan arahan v-swiper-height dan menetapkan parameter nama kelas kontena yang ketinggiannya perlu dikira. Seterusnya, dalam arahan, kami mentakrifkan fungsi kemas kini Apabila nilai terikat kepada ketinggian leret berubah, fungsi kemas kini dicetuskan. Dalam fungsi ini, kita mendapat ketinggian dalam bekas yang ditentukan melalui fungsi uni.createSelectorQuery() dan menetapkannya kepada ketinggian Swiper.
Ringkasnya, dua kaedah di atas boleh menetapkan ketinggian Swiper secara dinamik Mereka boleh memilih cara yang lebih sesuai untuk melaksanakannya mengikut keperluan projek sebenar.
Atas ialah kandungan terperinci Bagaimana untuk menetapkan ketinggian swiper secara dinamik dalam uniapp. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



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]

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.

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

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

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

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.

Artikel ini membincangkan menggunakan API UNI-APP untuk mengakses ciri peranti seperti kamera dan geolokasi, termasuk tetapan kebenaran dan pengendalian ralat.

Artikel ini membincangkan mengesahkan input pengguna dalam UNI-APP menggunakan JavaScript dan mengikat data, menekankan kedua-dua klien dan pengesahan sisi pelayan untuk integriti data. Plugin seperti Uni-Validate disyorkan untuk pengesahan borang.
