vue-cli init

This commit is contained in:
2025-08-15 16:25:44 +08:00
parent e81805b4c0
commit 8e22afd798
590 changed files with 103286 additions and 213 deletions
+129
View File
@@ -0,0 +1,129 @@
<template>
<view class="tishi">
<u-popup v-model="show" border-radius="26" mode="center" :mask-close-able="false" length="60%">
<view class="popupClass">
<view class="popupTitle">上传进度:{{percent}}%</view>
<u-image class="popupImg" width="100%" height="300rpx" :src="showImg"></u-image>
<u-line-progress class="progress" height="36" active-color="#2979ff" :percent="percent">
</u-line-progress>
</view>
</u-popup>
</view>
</template>
<script>
let _self = ''
export default {
props: {
ppList: {
type: Array,
default: () => []
},
ppUrls: {
type: Array,
default: () => []
},
imgType: {
type: String,
default: 'product'
}
},
data() {
return {
show: true,
percent: 0,
urls: [],
index: 0,
showImg: ''
}
},
async created() {
_self = this;
let ppUrls = _self.ppUrls;
let ppList = _self.ppList;
let arr = ppUrls;
for (var i = ppUrls.length; i < ppList.length; i++) {
_self.index = i;
_self.showImg = ppList[i].url;
let obj = await _self.uploadImgFun(ppList[i].url)
arr.push(obj);
}
_self.$emit('confirmPopupFun', arr);
},
methods: {
uploadImgFun: function(path) {
return new Promise(reslove => {
let date = new Date();
let typeSrc = '.png';
let xxx = path.lastIndexOf(".");
typeSrc = path.substring(xxx, path.length);
const result = uniCloud.uploadFile({
filePath: path,
cloudPath: 'image/' + _self.imgType + '/' + date.getFullYear() + '/' + (date.getMonth() + 1) + '/' +
date
.getDate() + '/' +
date.getTime() + Math.ceil(Math.random() * 100) + typeSrc,
onUploadProgress: (progressEvent) => {
_self.percent = Math.round(
(progressEvent.loaded * 100) / progressEvent.total
);
}
})
.then(res => {
// 获取图片访问地址
uniCloud.getTempFileURL({
fileList: [res.fileID]
})
.then(ddd => {
let obj = {
url: ddd.fileList[0].tempFileURL,
fileId: ddd.fileList[0].fileID
}
reslove(obj)
})
.catch(err => {
uni.showModal({
title: '错误提示',
content: err.toString(),
showCancel: false
})
})
})
.catch(err => {
uni.hideLoading();
uni.showModal({
title: '错误提示',
content: err.toString(),
showCancel: false
})
})
})
}
}
}
</script>
<style>
.popupClass {
position: relative;
}
.popupTitle {
width: 100%;
text-align: center;
margin-top: 16rpx;
font-weight: bold;
font-size: 30rpx;
}
.popupImg {
width: 80% !important;
margin-left: 10%;
margin: 26rpx 10%;
}
.progress {
width: 80%;
margin: 0 10% 26rpx;
}
</style>