fix: added change emit in Table bulti select
(cherry picked from commit 5f567cf13898b355bcd445749f86c316a53a3a28)
This commit is contained in:
parent
f47d24afea
commit
5962f2477f
@ -60,6 +60,8 @@ const props = defineProps({
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const emit = defineEmits(['change'])
|
||||||
|
|
||||||
const { getFields } = getMeta(props.doctype)
|
const { getFields } = getMeta(props.doctype)
|
||||||
|
|
||||||
const values = defineModel()
|
const values = defineModel()
|
||||||
@ -109,14 +111,16 @@ const addValue = (value) => {
|
|||||||
|
|
||||||
if (value) {
|
if (value) {
|
||||||
values.value.push({ [linkField.value.fieldname]: value })
|
values.value.push({ [linkField.value.fieldname]: value })
|
||||||
|
emit('change', values.value)
|
||||||
!error.value && (query.value = '')
|
!error.value && (query.value = '')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const removeValue = (value) => {
|
const removeValue = (value) => {
|
||||||
values.value = values.value.filter(
|
let _value = values.value.filter(
|
||||||
(row) => row[linkField.value.fieldname] !== value,
|
(row) => row[linkField.value.fieldname] !== value,
|
||||||
)
|
)
|
||||||
|
emit('change', _value)
|
||||||
}
|
}
|
||||||
|
|
||||||
const removeLastValue = () => {
|
const removeLastValue = () => {
|
||||||
@ -125,12 +129,11 @@ const removeLastValue = () => {
|
|||||||
let valueRef = valuesRef.value[valuesRef.value.length - 1]?.$el
|
let valueRef = valuesRef.value[valuesRef.value.length - 1]?.$el
|
||||||
if (document.activeElement === valueRef) {
|
if (document.activeElement === valueRef) {
|
||||||
values.value.pop()
|
values.value.pop()
|
||||||
|
emit('change', values.value)
|
||||||
nextTick(() => {
|
nextTick(() => {
|
||||||
if (values.value.length) {
|
if (values.value.length) {
|
||||||
valueRef = valuesRef.value[valuesRef.value.length - 1].$el
|
valueRef = valuesRef.value[valuesRef.value.length - 1].$el
|
||||||
valueRef?.focus()
|
valueRef?.focus()
|
||||||
} else {
|
|
||||||
setFocus()
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@ -91,6 +91,7 @@
|
|||||||
v-else-if="field.fieldtype === 'Table MultiSelect'"
|
v-else-if="field.fieldtype === 'Table MultiSelect'"
|
||||||
v-model="data[field.fieldname]"
|
v-model="data[field.fieldname]"
|
||||||
:doctype="field.options"
|
:doctype="field.options"
|
||||||
|
@change="(v) => fieldChange(v, field)"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<Link
|
<Link
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user