fix(Input/SelectMenu): handle file type and change events (#1570)

This commit is contained in:
Romain Hamel
2024-03-27 11:57:31 +01:00
committed by GitHub
parent bd8118c124
commit 878f7078a2
2 changed files with 20 additions and 18 deletions

View File

@@ -205,16 +205,19 @@ export default defineComponent({
}
const onChange = (event: Event) => {
const value = (event.target as HTMLInputElement).value
emit('change', value)
if (modelModifiers.value.lazy) {
updateInput(value)
}
// Update trimmed input so that it has same behavior as native input https://github.com/vuejs/core/blob/5ea8a8a4fab4e19a71e123e4d27d051f5e927172/packages/runtime-dom/src/directives/vModel.ts#L63
if (modelModifiers.value.trim) {
(event.target as HTMLInputElement).value = value.trim()
if (props.type === 'file') {
const value = (event.target as HTMLInputElement).files
emit('change', value)
} else {
const value = (event.target as HTMLInputElement).value
emit('change', value)
if (modelModifiers.value.lazy) {
updateInput(value)
}
// Update trimmed input so that it has same behavior as native input https://github.com/vuejs/core/blob/5ea8a8a4fab4e19a71e123e4d27d051f5e927172/packages/runtime-dom/src/directives/vModel.ts#L63
if (modelModifiers.value.trim) {
(event.target as HTMLInputElement).value = value.trim()
}
}
}