feat: design界面printboard选择generate时可从Library选择图片
This commit is contained in:
@@ -102,6 +102,14 @@ const props = defineProps({
|
||||
isLibrary: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
radio: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
},
|
||||
fullData: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
})
|
||||
|
||||
@@ -236,11 +244,18 @@ watch(
|
||||
|
||||
// 处理图片点击
|
||||
const handleImageClick = item => {
|
||||
// 已选中,取消选中
|
||||
if (selectList.value.includes(item.url)) {
|
||||
selectList.value = selectList.value.filter(url => url !== item.url)
|
||||
const isSelected = selectList.value.includes(item.url)
|
||||
|
||||
if (props.radio) {
|
||||
// 单选模式:选中当前图片或取消选中
|
||||
selectList.value = isSelected ? [] : [item.url]
|
||||
} else {
|
||||
selectList.value.push(item.url)
|
||||
// 多选模式:切换选中状态
|
||||
if (isSelected) {
|
||||
selectList.value = selectList.value.filter(url => url !== item.url)
|
||||
} else {
|
||||
selectList.value.push(item.url)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -262,7 +277,15 @@ const handleImageError = event => {
|
||||
}
|
||||
|
||||
const confirm = () => {
|
||||
emits('select', selectList.value)
|
||||
// console.log('selectList.value',selectList.value,'list.value',list.value)
|
||||
let emitData = null
|
||||
if (props.fullData) {
|
||||
const selected = list.value.filter(item => selectList.value.includes(item.url))
|
||||
emitData = props.radio ? selected[0] : selected
|
||||
} else {
|
||||
emitData = selectList.value
|
||||
}
|
||||
emits('select', emitData)
|
||||
showPanel.value = false
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user