Merge pull request #13651 from dataease/pr@dev-v2@fix_group-move

fix: 修复多选组件无法使用快捷键移动问题
This commit is contained in:
王嘉豪 2024-11-28 16:00:11 +08:00 committed by GitHub
commit 506f2ca552
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -187,16 +187,16 @@ function move(keyCode) {
const scale = dvMainStore.canvasStyleData.scale / 100 const scale = dvMainStore.canvasStyleData.scale / 100
if (keyCode === leftKey) { if (keyCode === leftKey) {
curComponent.value.style.left = curComponent.value.style.left - scale curComponent.value.style.left = curComponent.value.style.left - scale
groupAreaAdaptor(-1, 0) groupAreaAdaptor(-scale, 0)
} else if (keyCode === rightKey) { } else if (keyCode === rightKey) {
curComponent.value.style.left = curComponent.value.style.left + scale curComponent.value.style.left = curComponent.value.style.left + scale
groupAreaAdaptor(1, 0) groupAreaAdaptor(scale, 0)
} else if (keyCode === upKey) { } else if (keyCode === upKey) {
curComponent.value.style.top = curComponent.value.style.top - scale curComponent.value.style.top = curComponent.value.style.top - scale
groupAreaAdaptor(0, -1) groupAreaAdaptor(0, -scale)
} else if (keyCode === downKey) { } else if (keyCode === downKey) {
curComponent.value.style.top = curComponent.value.style.top + scale curComponent.value.style.top = curComponent.value.style.top + scale
groupAreaAdaptor(0, 1) groupAreaAdaptor(0, scale)
} }
snapshotStore.recordSnapshotCache('key-move') snapshotStore.recordSnapshotCache('key-move')
} }
@ -212,6 +212,11 @@ function groupAreaAdaptor(leftOffset = 0, topOffset = 0) {
width: parentNode.offsetWidth, width: parentNode.offsetWidth,
height: parentNode.offsetHeight height: parentNode.offsetHeight
}) })
} else if (curComponent.value.component === 'GroupArea' && areaData.value.components.length > 0) {
areaData.value.components.forEach(component => {
component.style.top = component.style.top + topOffset
component.style.left = component.style.left + leftOffset
})
} }
} }