.點擊圖片上傳按鈕時,觸發(fā)方法:
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,設(shè)置圖片的數(shù)量
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 = '';
}
//}
}