1
0
tangning 22 часов назад
Родитель
Сommit
46dd2c9aea
2 измененных файлов с 12 добавлено и 3 удалено
  1. 11 2
      src/view/case/photos/canvas-photo-editor.js
  2. 1 1
      src/view/case/photos/index.vue

+ 11 - 2
src/view/case/photos/canvas-photo-editor.js

@@ -1101,9 +1101,18 @@ export class CanvasPhotoEditor {
     return this.pages
   }
   deleteSelectedPage() {
-    if (this.selectedPageIndex === -1 || this.pages.length <= 1) return this.pages
+    console.log(this.selectedPageItem, 'selectedPageItem', this.pages)
+    if (this.selectedPageItem.index == -1 &&( this.selectedPageIndex === -1 || this.pages.length <= 1)) return this.pages
     const newPages = [...this.pages]
-    newPages.splice(this.selectedPageIndex, 1)
+    if(this.selectedPageItem.index == -1){//删除整页
+      newPages.splice(this.selectedPageIndex, 1)
+    }else{//删除单个图片
+      newPages.forEach((ele, index) => {
+        if(index == this.selectedPageIndex){
+          ele.list.splice(this.selectedPageItem.index, 1)
+        }
+      })
+    }
     this.pages = newPages
     this.selectedPageIndex = Math.min(this.selectedPageIndex, this.pages.length - 1)
     this.resetPosition()

+ 1 - 1
src/view/case/photos/index.vue

@@ -220,7 +220,7 @@ const getImgList = async () => {
   let pageCentent = await getCasePhotoRollList(caseId.value)
   let item = pageCentent.find(ele => ele.id == id)
   title.value = item?.name || '照片制卷'
-  let content = JSON.parse(item?.content)
+  let content = item && item.content && JSON.parse(item?.content) || {}
   if(content.pages) pages.value = content.pages
   // editor.value.drawAllPages(photos.value);
   editor.value.pages = pages.value;