Maison interface Web uni-app Comment résoudre le problème selon lequel les images de l'album sélectionné ne sont pas affichées dans le projet uniapp

Comment résoudre le problème selon lequel les images de l'album sélectionné ne sont pas affichées dans le projet uniapp

Apr 06, 2023 pm 02:21 PM

Dans le processus de développement à l'aide d'Uniapp, nous devons souvent utiliser la fonction de sélection d'images d'album. Cependant, nous rencontrons parfois le problème que les images ne s'affichent pas après la sélection. Dans cet article, je vais vous expliquer pourquoi ce problème se produit et comment le résoudre.

1. Pourquoi y a-t-il un problème selon lequel les photos de l'album ne s'affichent pas ?

1. Problèmes d'autorisation

Dans le système Android, nous devons demander dynamiquement l'autorisation de lire le stockage externe avant de pouvoir accéder à l'album photo. Si nous ne demandons pas l'autorisation avec succès, les images de l'album ne seront pas lues. et ne peut donc pas être affiché.

2. Problème de type de données

Lors de l'appel de l'API pour sélectionner les images de l'album, nous devons renvoyer un tableau pour charger les images sélectionnées, mais parfois il peut y avoir une incompatibilité de type de données dans notre code, ce qui entraîne que l'image sélectionnée ne peut pas être affiché sur la page.

3. Problème de chemin

Les images sélectionnées dans l'album doivent être affichées en utilisant le chemin de l'image lors du transfert vers la page d'accueil. Cependant, si notre chemin est mal écrit ou si le nom du fichier ne correspond pas, le chemin d'accès est incorrect. l’image sélectionnée ne s’affichera pas normalement.

2. Comment résoudre le problème selon lequel les images de l'album ne s'affichent pas ?

1. Vérifiez les problèmes d'autorisation

Lors de la sélection des photos de l'album, nous devons demander l'autorisation de lire le stockage externe. Si notre demande d'autorisation échoue, nous devons vérifier. Vous pouvez résoudre le problème d'autorisation en suivant les étapes suivantes :

(1) Ajoutez l'autorisation de lecture de stockage externe dans le fichier manifest.json :

"android": {
    "permission": [
      "android.permission.READ_EXTERNAL_STORAGE"
    ]
  }
Copier après la connexion

(2) Dans la page où vous souhaitez utiliser la fonction de sélection des images de l'album , utilisez la méthode uni.requestAuthorize pour demander l'autorisation :

uni.requestAuthorize({
    scope: 'scope.writePhotosAlbum',
    success() {
        console.log('授权成功')
    },
    fail() {
        console.log('授权失败')
    }
})
Copier après la connexion

2. Vérifiez les problèmes de type de données

Si nos types de données ne correspondent pas, l'image sélectionnée ne peut pas être affichée normalement sur la page. Nous devons faire attention au type de données utilisé dans le code, comme dans l'exemple suivant :

data() {
    return {
       imgList: [],
    }
},
methods: {
    chooseImage(){
        uni.chooseImage({
            count: 3,
            sizeType: ['original', 'compressed'],
            sourceType: ['album', 'camera'],
            success: function (res) {
                this.imgList = res.tempFilePaths; // 选择图片成功后将图片路径存入imgList数组
            }
        })
    }
}
Copier après la connexion

Dans le code ci-dessus, nous stockons le chemin temporaire de l'image sélectionnée dans le tableau imgList, donc si nous devons afficher l'image sélectionnée image sur la page, peut être fait de la manière suivante :

<view>
    <image v-for="(item,index) in imgList" :src="item"></image>
</view>
Copier après la connexion

Dans le code ci-dessus, nous utilisons v-for pour parcourir chaque élément du tableau imgList et utilisons la balise :image pour afficher l'image sur la page.

3. Vérifiez les problèmes de chemin

Nous devons utiliser le chemin correct comme référence lors de l'affichage des images, nous devons donc vérifier soigneusement si le chemin de l'image est correct et s'il y a des fautes d'orthographe et d'autres problèmes. Normalement, ce que nous retournons après avoir sélectionné une image est un chemin temporaire, mais lors de l'affichage de l'image, nous devons utiliser un chemin local. Nous pouvons obtenir le chemin local via la méthode suivante :

let realPath = '';
uni.getFileSystemManager().access({
        path: tempFilePaths,
        success() {
            realPath = wx.env.USER_DATA_PATH + '/' + new Date().getTime() + '.png'; //使用 wx.env.USER_DATA_PATH 获取本地存储路径
            uni.getFileSystemManager().saveFile({
                tempFilePath: tempFilePaths, // 临时文件地址
                filePath: realPath,
                success: (res) => {
                        console.log('保存图片到本地成功:' + res.savedFilePath)
                },
                fail: function (res) {
                    console.log(res);
                }
            });
        },
        fail() {
            console.log('访问失败')
        }
});
Copier après la connexion

Avec la méthode ci-dessus, nous pouvons enregistrer l'image sélectionnée localement et appeler la fonction de rappel après un enregistrement réussi pour obtenir et afficher le chemin.

Résumé

Les images de l'album qui ne s'affichent pas sont un problème courant lorsque nous développons avec Uniapp. Généralement, ce problème est dû à des autorisations, des types de données ou des chemins d'accès incorrects, etc. Nous pouvons résoudre ce problème en vérifiant les autorisations, les types de données et les chemins. J'espère que cet article pourra aider tout le monde et rendre le processus de développement d'Uniapp plus fluide.

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 de ce site Web
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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment gérer le stockage local à Uni-App? Comment gérer le stockage local à Uni-App? Mar 11, 2025 pm 07:12 PM

Cet article détaille les API de stockage local d'Uni-App (Uni.SetStorageSync (), Uni.GetStoragesYnc (), et leurs homologues asynchrones), mettant l'accent sur les meilleures pratiques telles que l'utilisation de clés descriptives, la limitation de la taille des données et la gestion de l'analyse JSON. Ça souligne que lo

Comment renommer les fichiers de téléchargement UNIAPP Comment renommer les fichiers de téléchargement UNIAPP Mar 04, 2025 pm 03:43 PM

Cet article détaille les solutions de contournement pour le renommer des fichiers téléchargés dans UNIAPP, manquant de support API direct. Android / iOS nécessite des plugins natifs pour le changement de nom post-téléchargement, tandis que les solutions H5 se limitent à suggérer des noms de fichiers. Le processus implique le tempor

Comment gérer l'encodage des fichiers avec UniApp Download Comment gérer l'encodage des fichiers avec UniApp Download Mar 04, 2025 pm 03:32 PM

Cet article aborde les problèmes d'encodage des fichiers dans les téléchargements UNIAPP. Il souligne l'importance des en-têtes de type contenu côté serveur et l'utilisation de TextDecoder de JavaScript pour le décodage côté client basé sur ces en-têtes. Solutions pour un problème d'encodage commun

Comment faire des demandes d'API et gérer les données dans Uni-App? Comment faire des demandes d'API et gérer les données dans Uni-App? Mar 11, 2025 pm 07:09 PM

Cet article détaille la fabrication et la sécurisation des demandes d'API dans Uni-App à l'aide de Uni.Request ou Axios. Il couvre la gestion des réponses JSON, les meilleures pratiques de sécurité (HTTPS, authentification, validation des entrées), dépannage des échecs (problèmes de réseau, CORS, S

Comment utiliser les API de géolocalisation Uni-App? Comment utiliser les API de géolocalisation Uni-App? Mar 11, 2025 pm 07:14 PM

Cet article détaille les API de géolocalisation d'Uni-App, en se concentrant sur Uni.getLocation (). Il traite des pièges communs comme des systèmes de coordonnées incorrects (GCJ02 vs WGS84) et des problèmes d'autorisation. Améliorer la précision de l'emplacement via des lectures en moyenne et une manipulation

Comment gérer l'état à Uni-App à l'aide de Vuex ou PINIA? Comment gérer l'état à Uni-App à l'aide de Vuex ou PINIA? Mar 11, 2025 pm 07:08 PM

Cet article compare Vuex et PINIA pour la gestion de l'État à Uni-App. Il détaille leurs fonctionnalités, leur implémentation et leurs meilleures pratiques, mettant en évidence la simplicité de Pinia contre la structure de Vuex. Le choix dépend de la complexité du projet, avec Pinia Suita

Comment utiliser les API de partage social de l'Uni-App? Comment utiliser les API de partage social de l'Uni-App? Mar 13, 2025 pm 06:30 PM

L'article détaille comment intégrer le partage social dans les projets Uni-App à l'aide de l'API Uni.share, couvrant la configuration, la configuration et les tests sur des plateformes comme WeChat et Weibo.

Comment utiliser la fonction Easycom d'Uni-App pour l'enregistrement des composants automatiques? Comment utiliser la fonction Easycom d'Uni-App pour l'enregistrement des composants automatiques? Mar 11, 2025 pm 07:11 PM

Cet article explique la fonctionnalité Easycom d'Uni-App, l'automatisation de l'enregistrement des composants. Il détaille la configuration, y compris Autoscan et la cartographie des composants personnalisés, mettant en évidence des avantages tels que la binelle réduite, la vitesse améliorée et la lisibilité améliorée.

See all articles