uniapp 프로젝트에서 선택한 앨범 사진이 보이지 않는 문제 해결 방법
유니앱을 사용하여 개발하는 과정에서 앨범 사진 선택 기능을 사용해야 하는 경우가 종종 있습니다. 그런데 선택 후 사진이 표시되지 않는 문제가 가끔 발생합니다. 이번 글에서는 이런 문제가 발생하는 이유와 해결 방법에 대해 설명하겠습니다.
1. 앨범 사진이 표시되지 않는 문제는 왜 발생하나요?
1. 권한 문제
Android 시스템에서는 사진 앨범에 액세스하기 전에 외부 저장소 읽기 권한을 동적으로 신청해야 합니다. 권한 신청이 성공적으로 이루어지지 않으면 앨범에 있는 사진을 읽을 수 없습니다. 따라서 표시할 수 없습니다.
2. 데이터 유형 문제
앨범 사진 선택을 위해 API를 호출할 때 선택한 사진을 로드하려면 배열을 반환해야 하지만 때로는 코드에 데이터 유형이 일치하지 않아 선택한 이미지를 모두 로드할 수 없는 경우가 있습니다. 페이지에 표시됩니다.
3. 경로 문제
앨범에서 선택한 사진을 프런트엔드 페이지로 전송할 때 사진의 경로를 사용하여 표시해야 합니다. 그러나 경로가 잘못 입력되거나 파일 이름이 일치하지 않는 경우 선택한 사진이 정상적으로 표시되지 않습니다.
2. 앨범의 사진이 표시되지 않는 문제를 해결하는 방법은 무엇입니까?
1. 권한 문제 확인
앨범 사진 선택 시 외부 저장소 읽기 권한을 신청해야 합니다. 권한 신청에 실패할 경우 확인해야 합니다. 다음 단계를 통해 권한 문제를 해결할 수 있습니다.
(1) Manifest.json 파일에 외부 저장소 읽기 권한을 추가합니다.
"android": { "permission": [ "android.permission.READ_EXTERNAL_STORAGE" ] }
(2) 앨범 사진 선택 기능을 사용하려는 페이지에서, uni.requestAuthorize 메소드를 사용하여 권한을 신청하세요:
uni.requestAuthorize({ scope: 'scope.writePhotosAlbum', success() { console.log('授权成功') }, fail() { console.log('授权失败') } })
2. 데이터 유형 문제 확인
데이터 유형이 일치하지 않으면 선택한 이미지가 페이지에 정상적으로 표시되지 않습니다. 다음 예와 같이 코드에 사용된 데이터 유형에 주의할 필요가 있습니다.
data() { return { imgList: [], } }, methods: { chooseImage(){ uni.chooseImage({ count: 3, sizeType: ['original', 'compressed'], sourceType: ['album', 'camera'], success: function (res) { this.imgList = res.tempFilePaths; // 选择图片成功后将图片路径存入imgList数组 } }) } }
위 코드에서는 선택한 이미지의 임시 경로를 imgList 배열에 저장하므로 선택한 이미지를 표시해야 하는 경우
<view> <image v-for="(item,index) in imgList" :src="item"></image> </view>
위 코드에서는 v-for를 사용하여 imgList 배열의 각 요소를 순회하고 :image 태그를 사용하여 페이지에 이미지를 표시합니다.
3. 경로 문제 확인
이미지 표시 시 참고용으로 올바른 경로를 사용해야 하므로 이미지 경로가 올바른지, 철자 오류 등의 문제가 있는지 주의 깊게 확인해야 합니다. 일반적으로 사진을 선택한 후 반환되는 것은 임시 경로이지만, 사진을 표시할 때는 로컬 경로를 사용해야 합니다. 다음 방법을 통해 로컬 경로를 얻을 수 있습니다.
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('访问失败') } });
위 방법을 통해 선택한 이미지를 로컬에 저장하고 성공적으로 저장한 후 콜백 함수를 호출하여 경로를 얻어 표시할 수 있습니다.
요약
유니앱을 사용하여 개발할 때 앨범 사진이 표시되지 않는 현상은 흔히 발생하는 문제입니다. 일반적으로 이 문제는 잘못된 권한, 데이터 유형 또는 경로 등으로 인해 발생합니다. 권한, 데이터 유형 및 경로를 확인하여 이 문제를 해결할 수 있습니다. 이 글이 모든 분들에게 도움이 되고 Uniapp 개발 과정을 더욱 원활하게 만드는 데 도움이 되기를 바랍니다.
위 내용은 uniapp 프로젝트에서 선택한 앨범 사진이 보이지 않는 문제 해결 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 기사에는 Uni.share API를 사용하여 소셜 공유를 UNI-APP 프로젝트에 통합하는 방법에 대해 자세히 설명합니다. Share API, WeChat 및 Weibo와 같은 플랫폼에서 설정, 구성 및 테스트를 다룹니다.

기사는 UNI-APP에서 SASS 및 적은 전처리기를 사용하여 설정, 혜택 및 이중 사용을 자세히 설명합니다. 주요 초점은 구성과 장점에 있습니다. [159 자]

이 기사는 Uni-App의 애니메이션 API를 사용하는 방법, 애니메이션, 주요 기능 및 애니메이션 타이밍을 결합하고 제어하는 방법을 작성하고 적용하는 단계를 자세히 설명합니다. character count : 159

이 기사는 장치, 통합, 기능, UI/UX, 성능, 크로스 플랫폼 및 보안 테스트를 포함한 UniAPP 응용 프로그램에 대한 다양한 테스트 유형에 대해 설명합니다. 또한 크로스 플랫폼 호환성을 보장하고 JES와 같은 도구를 권장합니다.

이 기사는 코드 최적화, 리소스 관리 및 코드 분할 및 게으른로드와 같은 기술에 중점을 둔 UNIAPP 패키지 크기를 줄이기위한 전략에 대해 설명합니다.

이 기사는 로컬 데이터 관리를 위해 Uni-App의 스토리지 API (Uni.setStorage, uni.getStorage)를 사용하는 방법을 설명하고 모범 사례, 문제 해결 및 효과적인 사용을위한 제한 사항 및 고려 사항에 대해 설명합니다.

이 기사에는 공통, 구성 요소, 페이지, 정적 및 Unicloud와 같은 주요 디렉토리 및 app.vue, main.js, manifest.json, pages.json 및 uni.scss와 같은 중요한 파일을 설명하는 Uni-App 프로젝트의 파일 구조가 자세히 설명되어 있습니다. 이것이 어떻게 O.

이 기사는 HBuilderx, WeChat 개발자 도구 및 Chrome Devtools와 같은 도구에 중점을 둔 UniAPP 개발을위한 디버깅 도구 및 모범 사례에 대해 설명합니다.
