From 840a1aa82b966c5c8287cf6fd75a10eda1afc6ff Mon Sep 17 00:00:00 2001 From: X1627315083 <1627315083@qq.com> Date: Wed, 8 Nov 2023 09:31:40 +0800 Subject: [PATCH] 2023-11-8-1 --- src/component/Detail/DesignDetail.vue | 1 + src/component/Detail/DesignPrintOperation.vue | 1 + .../HomePage/ExportNewCoolection.vue | 82 ++++++- src/component/HomePage/Generate.vue | 20 ++ src/component/HomePage/Material.vue | 18 +- .../HomePage/NewCollectionReview.vue | 77 +++++- src/component/HomePage/scaleImage.vue | 229 ++++++++++++++++++ src/component/LibraryPage/setLabel.vue | 14 +- src/tool/util.js | 23 ++ src/views/LibraryPage.vue | 12 + vue.config.js | 1 + 11 files changed, 449 insertions(+), 29 deletions(-) create mode 100644 src/component/HomePage/scaleImage.vue diff --git a/src/component/Detail/DesignDetail.vue b/src/component/Detail/DesignDetail.vue index c6050e16..2daa8ae2 100644 --- a/src/component/Detail/DesignDetail.vue +++ b/src/component/Detail/DesignDetail.vue @@ -942,6 +942,7 @@ export default defineComponent({ overflow-y: auto; display: flex; flex-direction: column; + overflow: hidden; .clothes_detail_item{ // margin-bottom: 5rem; flex: 1; diff --git a/src/component/Detail/DesignPrintOperation.vue b/src/component/Detail/DesignPrintOperation.vue index ee6814ff..fa0ce787 100644 --- a/src/component/Detail/DesignPrintOperation.vue +++ b/src/component/Detail/DesignPrintOperation.vue @@ -878,6 +878,7 @@ export default defineComponent({ max-height: 50rem; min-height: 30rem; width: auto; + max-width: 60rem; } .designOpenrtion_sketch_mask{ z-index: 3; diff --git a/src/component/HomePage/ExportNewCoolection.vue b/src/component/HomePage/ExportNewCoolection.vue index abfdf8ca..7779eef4 100644 --- a/src/component/HomePage/ExportNewCoolection.vue +++ b/src/component/HomePage/ExportNewCoolection.vue @@ -42,14 +42,20 @@ -
+ +
+
+
+ +
+
-
@@ -58,7 +64,7 @@
-
+
@@ -69,20 +75,69 @@
\ No newline at end of file diff --git a/src/component/LibraryPage/setLabel.vue b/src/component/LibraryPage/setLabel.vue index 13b34a5a..94a605ee 100644 --- a/src/component/LibraryPage/setLabel.vue +++ b/src/component/LibraryPage/setLabel.vue @@ -8,14 +8,11 @@ :centered="true" @onCancel="clearSetLabel" > - +
+
    +
  • +
+
@@ -110,7 +107,6 @@ export default defineComponent({ }else{ this.multiple = true } - console.log(this.$parent?.options); }, clearSetLabel(){ diff --git a/src/tool/util.js b/src/tool/util.js index cd507f15..410f4670 100644 --- a/src/tool/util.js +++ b/src/tool/util.js @@ -28,6 +28,28 @@ function blobToFile(blob, fileName){ return blob; } +//下载图片 +function downloadIamge (imgsrc, name) { // 下载图片地址和图片名 + var image = new Image() + // 解决跨域 Canvas 污染问题 + image.setAttribute('crossOrigin', 'anonymous') + image.onload = function () { + var canvas = document.createElement('canvas') + canvas.width = image.width + canvas.height = image.height + var context = canvas.getContext('2d') + context.drawImage(image, 0, 0, image.width, image.height) + var url = canvas.toDataURL('image/jpeg') // 得到图片的base64编码数据 + var a = document.createElement('a') // 生成一个a元素 + var event = new MouseEvent('click') // 创建一个单击事件 + a.download = name || 'generate' // 设置图片名称 + a.href = url // 将生成的URL设置为a.href属性 + a.target='_blank' + a.dispatchEvent(event) // 触发a的单击事件 + } + image.src = imgsrc +} + function dataURLtoFile(dataurl, filename){ var arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1], bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n); @@ -144,4 +166,5 @@ export{ formatTime, dataURLtoBlob, isMoible, + downloadIamge, } \ No newline at end of file diff --git a/src/views/LibraryPage.vue b/src/views/LibraryPage.vue index 73688883..29f76d97 100644 --- a/src/views/LibraryPage.vue +++ b/src/views/LibraryPage.vue @@ -95,6 +95,7 @@ v-model:value="value" style="width: 60%" multiple + @change="setLabel1" max-tag-count="responsive" :options="options" placeholder="Please select" @@ -1010,9 +1011,20 @@ export default defineComponent({ divMax.appendChild(button1) divMax.appendChild(button2) cascaderChild?.insertAdjacentElement("afterbegin", divMax); + + // cascader.addEventListener('click',this.cascaderClick) } }) }, + // cascaderClick(e:Event){ + // console.log(e.target) + // }, + setLabel1(value:any,selectedOptions:any){ + console.log(value,selectedOptions); + let myCascader:any = this.$refs.cascader + console.log(myCascader); + + }, setClick(){ this.labelOpen = false document.removeEventListener('click',this.setClick) diff --git a/vue.config.js b/vue.config.js index 872c6fda..a32f23a2 100644 --- a/vue.config.js +++ b/vue.config.js @@ -38,6 +38,7 @@ module.exports = defineConfig({ } } }, + // https:true, }, pluginOptions: { "style-resources-loader": {