diff --git a/src/components/Canvas/DepthCanvas/components/layer-panel/layer-list.vue b/src/components/Canvas/DepthCanvas/components/layer-panel/layer-list.vue index b1b3e50..6841e3d 100644 --- a/src/components/Canvas/DepthCanvas/components/layer-panel/layer-list.vue +++ b/src/components/Canvas/DepthCanvas/components/layer-panel/layer-list.vue @@ -69,6 +69,7 @@ const draging = ref(false) const layerManager = inject('layerManager') as any const canvasManager = inject('canvasManager') as any + const stateManager = inject('stateManager') as any const list = computed(() => layerManager.layers.value) const config = ref({ 'data-container-type': 'root', @@ -112,7 +113,7 @@ clearData() layerManager.sortLayers(true) } - const handleAdd = (event, parent?) => { + const handleAdd = async (event, parent?) => { const { from, to, oldIndex, newIndex, data } = event if (data.type === 'group') return console.log('跨级拖动', startParent.value, oldIndex, parent, newIndex) @@ -126,7 +127,9 @@ } arr.splice(newIndex, 0, layer) clearData() - layerManager.sortLayers(true) + layerManager.sortLayers(false) + await layerManager.updateLayerThumbnailsById(layer.info.id) + stateManager.recordState() } const addLayer = () => { layerManager.createEmptyLayer(true, true) diff --git a/src/components/Canvas/DepthCanvas/manager/CanvasManager.ts b/src/components/Canvas/DepthCanvas/manager/CanvasManager.ts index cda8905..703e8ee 100644 --- a/src/components/Canvas/DepthCanvas/manager/CanvasManager.ts +++ b/src/components/Canvas/DepthCanvas/manager/CanvasManager.ts @@ -190,8 +190,7 @@ export class CanvasManager { for (let i = 0; i < objects.length; i++) { let object = objects[i] let path = this.getObjectById(object.info.parentId)?.clipPath - if (!path) continue - object.set({ clipPath: path }) + object.set({ clipPath: path || null }) } this.renderAll() }