Maison  >  Article  >  interface Web  >  Comment obtenir un effet de galerie d'images dans Uniapp

Comment obtenir un effet de galerie d'images dans Uniapp

WBOY
WBOYoriginal
2023-07-06 09:45:061730parcourir

uniapp est un framework de développement multiplateforme qui peut facilement développer des applications iOS et Android en même temps. Dans uniapp, nous pouvons obtenir l'effet galerie d'images en utilisant le composant uni-gallery. Cet article présentera en détail comment implémenter l'effet de galerie d'images dans uniapp et fournira des exemples de code.

1. Installez le composant uni-gallery
Ouvrez l'outil de ligne de commande dans le répertoire racine du projet uniapp et exécutez la commande suivante pour installer le composant uni-gallery :

npm install @dcloudio/uni-ui
2. Créez une page de galerie d'images
Tout d'abord, créez une nouvelle page Galerie dans le répertoire pages du projet uniapp, et écrivez le code suivant dans le fichier Gallery.vue :

d477f9ce7bf77f53fbcf36bec1b69b7a
89c662c6f8b87e82add978948dc499d2

<button @click="showGallery">打开图库</button>
<uni-gallery style="width:100%;height:100%;display:none;" :url-list="urlList" :show="isShow" @change="onGalleryChange" @close="onGalleryClose"></uni-gallery>

20908554640865bb724c429685f97dbe
21c97d3a051048b8e55e3c8f199a54b2

3f1c4e4b6b16bbbd69b2ee476dc4f83a
export par défaut {
data() {

return {
  urlList: [], // 图片地址数组
  isShow: false // 是否显示画廊
}

},
méthodes : {

showGallery() {
  this.urlList = [
    'https://example.com/image1.jpg',
    'https://example.com/image2.jpg',
    'https://example.com/image3.jpg'
  ]; // 设置图片地址数组
  this.isShow = true; // 显示画廊
},
onGalleryChange(index) {
  console.log('当前展示第' + (index + 1) + '张图片');
},
onGalleryClose() {
  console.log('关闭画廊');
  this.isShow = false; // 隐藏画廊
  this.urlList = []; // 清空图片地址数组,以便重新加载
}

}
}
2cacc6d41bbb37262a98f745aa00fbf0
Analyse du code :
Tout d’abord, showGallery via un événement de clic sur un bouton pour afficher la galerie. Dans la méthode showGallery, nous définissons d'abord un tableau d'adresses d'image urlList, puis définissons la variable isShow sur true pour afficher le composant galerie.

Dans le composant uni-gallery, nous transmettons le tableau d'adresses d'image en définissant l'attribut url-list. Le composant galerie recharge les images lorsque l'urlList est mise à jour. Contrôlez l'affichage et le masquage de la galerie en définissant l'attribut show. Dans l'événement de changement, nous pouvons obtenir l'index de l'image actuellement affiché et effectuer certaines opérations personnalisées. En cas de fermeture, lorsque la galerie est fermée, nous définissons la variable isShow sur false pour masquer la galerie et effacer le tableau urlList afin que les images puissent être rechargées.

3. Utilisez l'effet galerie d'images
Afin d'utiliser l'effet galerie d'images dans des applications réelles, nous pouvons utiliser la page Galerie comme entrée, par exemple, ajouter le code suivant au fichier App.vue :

65774e11a79734282f46bec8428fe5b1
dc6dce4a544fdca2df29d5ac0ea9906b

<router-view></router-view>

16b28748ea4df4d9c2150843fecfba68
21c97d3a051048b8e55e3c8f199a54b2

3f1c4e4b6b16bbbd69b2ee476dc4f83a
export monté par défaut {
() {

uni.navigateTo({
  url: '/pages/Gallery' // 打开Gallery页
});

}
}
2cacc6d41bbb37262a98f745aa00fbf0
In la fonction de hook de cycle de vie montée, nous utilisons la méthode uni.navigateTo pour ouvrir la page Galerie. De cette façon, lorsque l'application est ouverte, la page Galerie s'affichera automatiquement, montrant ainsi l'effet galerie d'images.

Résumé :
En utilisant le composant uni-gallery, nous pouvons facilement obtenir l'effet de galerie d'images dans uniapp. Avec seulement quelques lignes de code et un tableau d’adresses d’images, vous pouvez créer une galerie d’images entièrement fonctionnelle. J'espère que l'exemple de code de cet article pourra vous aider à obtenir l'effet de galerie d'images dont vous avez besoin dans Uniapp.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn