uniapp 系统权限授权和自定义一次授权形式

.点击图片上传按钮时,触发方法:
const chooseImage = () => {

if (uni.getSystemInfoSync().platform === 'ios') {

selectImage();

} else {

if (storage.get('isPublishRequest') != '1') {
uni.showModal({
title: '提示',
content: 'APP需要您的同意才能使用摄像头拍照或者读取您的相册,用于上传图片',
showCancel: true, // 不显示取消按钮
cancelText: '取消',
confirmText: '确定',
success: function (res) {
if (res.confirm) {

   storage.set('isPublishRequest', '1');
   selectImage();
  } else if (res.cancel) {
   console.log('用户点击取消');
  }
 },
 fail: function (error) {
  console.error("显示弹框失败:", error);
 }
});

} else {
selectImage();
}
}
}

const selectImage = () => {
uni.chooseImage({
count: 1, // 默认9,设置图片的数量
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
const tempFilePaths = res.tempFilePaths;
uploadImage(tempFilePaths[0]); // 获取到图片路径后上传图片
}
});

}

const uploadImage = async (filePath : any) => {

let fileListLen = avatarList.value.length;

try {

const result = await uploadFilePromise(filePath);

studentData.value.avatar = result as string;
uni.$emit('updaMyInfo', { msg: '页面更新' });//成功之后返回列表页刷新列表页
} catch (ex : any) {
avatarList.value.splice(fileListLen);
studentData.value.avatar = '';
}
//}
}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容