|
|
@ -24,7 +24,6 @@ |
|
|
import { cloneDeep, upperFirst } from 'lodash-es'; |
|
|
import { cloneDeep, upperFirst } from 'lodash-es'; |
|
|
import { useItemLabelWidth } from '../hooks/useLabelWidth'; |
|
|
import { useItemLabelWidth } from '../hooks/useLabelWidth'; |
|
|
import { useI18n } from '@/hooks/web/useI18n'; |
|
|
import { useI18n } from '@/hooks/web/useI18n'; |
|
|
import { useDebounceFn } from '@vueuse/core'; |
|
|
|
|
|
|
|
|
|
|
|
export default defineComponent({ |
|
|
export default defineComponent({ |
|
|
name: 'BasicFormItem', |
|
|
name: 'BasicFormItem', |
|
|
@ -271,8 +270,6 @@ |
|
|
component, |
|
|
component, |
|
|
field, |
|
|
field, |
|
|
changeEvent = 'change', |
|
|
changeEvent = 'change', |
|
|
watchEventNames = ['search', 'change'], |
|
|
|
|
|
enableWatchEvent = true, |
|
|
|
|
|
valueField, |
|
|
valueField, |
|
|
} = props.schema; |
|
|
} = props.schema; |
|
|
|
|
|
|
|
|
@ -280,27 +277,6 @@ |
|
|
|
|
|
|
|
|
const eventKey = `on${upperFirst(changeEvent)}`; |
|
|
const eventKey = `on${upperFirst(changeEvent)}`; |
|
|
|
|
|
|
|
|
const { autoSetPlaceHolder, size, watchEvent } = props.formProps; |
|
|
|
|
|
let eventNames = {}; |
|
|
|
|
|
if (watchEvent && enableWatchEvent) { |
|
|
|
|
|
// table search 开启才触发事件 |
|
|
|
|
|
let immediateEvents = ['search']; // 立即执行的事件 |
|
|
|
|
|
watchEventNames.forEach((item) => { |
|
|
|
|
|
let timer: number = 500; |
|
|
|
|
|
if (immediateEvents.includes(item)) { |
|
|
|
|
|
timer = 0; |
|
|
|
|
|
} |
|
|
|
|
|
eventNames[`on${upperFirst(item)}`] = useDebounceFn( |
|
|
|
|
|
(...args: Nullable<Recordable<any>>[]) => { |
|
|
|
|
|
// todo 后续需要优化input中文输入的问题 |
|
|
|
|
|
console.log(args); |
|
|
|
|
|
const { reload = () => {} } = props.tableAction || {}; |
|
|
|
|
|
reload(); |
|
|
|
|
|
}, |
|
|
|
|
|
timer, |
|
|
|
|
|
); |
|
|
|
|
|
}); |
|
|
|
|
|
} |
|
|
|
|
|
const on = { |
|
|
const on = { |
|
|
[eventKey]: (...args: Nullable<Recordable<any>>[]) => { |
|
|
[eventKey]: (...args: Nullable<Recordable<any>>[]) => { |
|
|
const [e] = args; |
|
|
const [e] = args; |
|
|
@ -314,6 +290,7 @@ |
|
|
}; |
|
|
}; |
|
|
const Comp = componentMap.get(component) as ReturnType<typeof defineComponent>; |
|
|
const Comp = componentMap.get(component) as ReturnType<typeof defineComponent>; |
|
|
|
|
|
|
|
|
|
|
|
const { autoSetPlaceHolder, size } = props.formProps; |
|
|
const propsData: Recordable<any> = { |
|
|
const propsData: Recordable<any> = { |
|
|
allowClear: true, |
|
|
allowClear: true, |
|
|
size, |
|
|
size, |
|
|
@ -338,7 +315,6 @@ |
|
|
const compAttr: Recordable<any> = { |
|
|
const compAttr: Recordable<any> = { |
|
|
...propsData, |
|
|
...propsData, |
|
|
...on, |
|
|
...on, |
|
|
...eventNames, |
|
|
|
|
|
...bindValue, |
|
|
...bindValue, |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
|