|
@@ -169,7 +169,7 @@ onMounted(()=>{
|
|
|
|
|
|
|
|
|
|
|
|
-const customUpload = (options: UploadRequestOptions) =>{
|
|
|
+const customUpload = async (options: UploadRequestOptions) => {
|
|
|
|
|
|
// 自定义上传方法,使用qiniu-js库进行上传
|
|
|
const date = new Date();
|
|
@@ -179,54 +179,70 @@ const customUpload = (options: UploadRequestOptions) =>{
|
|
|
const directory = moment().format("yyyy/MM/DD/");
|
|
|
|
|
|
const fileSuffix = (options.file.name.split('.').pop() || '').toLowerCase();
|
|
|
- const fileName = uuid2(16, 16) ;
|
|
|
- const key = directory + fileName+"."+fileSuffix;
|
|
|
-
|
|
|
- const observable = qiniu.upload(options.file, key,qntoken.value );
|
|
|
-
|
|
|
- return observable.subscribe({
|
|
|
- complete(res) {
|
|
|
- // 上传完成时的回调
|
|
|
- const imageUrls = res.key;
|
|
|
- const file_data = {
|
|
|
- name: fileName+fileSuffix,
|
|
|
- fileName: imageUrls,
|
|
|
- url: imageUrls,
|
|
|
- fileSuffix: fileSuffix,
|
|
|
- size: options.file.size,
|
|
|
- originalName: options.file.name
|
|
|
- }
|
|
|
- addfile(file_data).then(res=>{
|
|
|
- uploadList.value.push({ name: res.data.fileName, url: res.data.url, ossId: res.data.ossId });
|
|
|
- uploadedSuccessfully();
|
|
|
- })
|
|
|
-
|
|
|
- //保存到后端
|
|
|
- // fileList.value.push(file_data)
|
|
|
-
|
|
|
- // 将成功状态标记添加到文件对象中。后续测试发现不加也可以,哈哈哈。是之前直接使用this的原因。这里就不去掉了。
|
|
|
- // const uploadedFileIndex = fileList.value.findIndex(file => file.url === imageUrls);
|
|
|
- //使用了 findIndex 方法来找到对应文件的索引,然后将状态标记为成功。请尝试修改代码并重新测试上传功能
|
|
|
- // if (uploadedFileIndex !== -1) {
|
|
|
- // console.log(uploadedFileIndex)
|
|
|
- // fileList.value[uploadedFileIndex].status = 'success';
|
|
|
- // }
|
|
|
-
|
|
|
- // uploadedSuccessfully();
|
|
|
-
|
|
|
- },
|
|
|
- next(res) {
|
|
|
- // 上传过程中的回调,如果需要可以在这里处理上传进度等信息
|
|
|
- // console.log(options)
|
|
|
- options.onProgress({percent:res.total.percent})
|
|
|
- // const progressEvt = evt as UploadProgressEvent
|
|
|
- // progressEvt.percent = evt.total > 0 ? (evt.loaded / evt.total) * 100 : 0
|
|
|
- // option.onProgress(progressEvt)
|
|
|
- },
|
|
|
- error(err) {
|
|
|
- // 上传出错时的回调
|
|
|
- },
|
|
|
- });
|
|
|
+ const fileName = uuid2(16, 16);
|
|
|
+ const key = directory + fileName + "." + fileSuffix;
|
|
|
+
|
|
|
+ const options1 = {
|
|
|
+ quality: 0.92,
|
|
|
+ noCompressIfLarger: false,
|
|
|
+ maxWidth: 20000,
|
|
|
+ maxHeight: 20000
|
|
|
+ }
|
|
|
+ try{
|
|
|
+
|
|
|
+ qiniu.compressImage(options.file, options1).then(res => {
|
|
|
+ debugger
|
|
|
+});
|
|
|
+ }catch (e){
|
|
|
+ console.log(e)
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // const observable = qiniu.upload(options.file, key, qntoken.value);
|
|
|
+ //
|
|
|
+ // return observable.subscribe({
|
|
|
+ // complete(res) {
|
|
|
+ // // 上传完成时的回调
|
|
|
+ // const imageUrls = res.key;
|
|
|
+ // const file_data = {
|
|
|
+ // name: fileName + fileSuffix,
|
|
|
+ // fileName: imageUrls,
|
|
|
+ // url: imageUrls,
|
|
|
+ // fileSuffix: fileSuffix,
|
|
|
+ // size: options.file.size,
|
|
|
+ // originalName: options.file.name
|
|
|
+ // }
|
|
|
+ // addfile(file_data).then(res => {
|
|
|
+ // uploadList.value.push({name: res.data.fileName, url: res.data.url, ossId: res.data.ossId});
|
|
|
+ // uploadedSuccessfully();
|
|
|
+ // })
|
|
|
+ //
|
|
|
+ // //保存到后端
|
|
|
+ // // fileList.value.push(file_data)
|
|
|
+ //
|
|
|
+ // // 将成功状态标记添加到文件对象中。后续测试发现不加也可以,哈哈哈。是之前直接使用this的原因。这里就不去掉了。
|
|
|
+ // // const uploadedFileIndex = fileList.value.findIndex(file => file.url === imageUrls);
|
|
|
+ // //使用了 findIndex 方法来找到对应文件的索引,然后将状态标记为成功。请尝试修改代码并重新测试上传功能
|
|
|
+ // // if (uploadedFileIndex !== -1) {
|
|
|
+ // // console.log(uploadedFileIndex)
|
|
|
+ // // fileList.value[uploadedFileIndex].status = 'success';
|
|
|
+ // // }
|
|
|
+ //
|
|
|
+ // // uploadedSuccessfully();
|
|
|
+ //
|
|
|
+ // },
|
|
|
+ // next(res) {
|
|
|
+ // // 上传过程中的回调,如果需要可以在这里处理上传进度等信息
|
|
|
+ // // console.log(options)
|
|
|
+ // options.onProgress({percent: res.total.percent})
|
|
|
+ // // const progressEvt = evt as UploadProgressEvent
|
|
|
+ // // progressEvt.percent = evt.total > 0 ? (evt.loaded / evt.total) * 100 : 0
|
|
|
+ // // option.onProgress(progressEvt)
|
|
|
+ // },
|
|
|
+ // error(err) {
|
|
|
+ // // 上传出错时的回调
|
|
|
+ // },
|
|
|
+ // });
|
|
|
}
|
|
|
|
|
|
// 上传前校检格式和大小
|