diff --git a/packages/devui-vue/devui/editable-select/src/composables/use-input-event.ts b/packages/devui-vue/devui/editable-select/src/composables/use-input-event.ts
index 0d0de98525..9e80e4f056 100644
--- a/packages/devui-vue/devui/editable-select/src/composables/use-input-event.ts
+++ b/packages/devui-vue/devui/editable-select/src/composables/use-input-event.ts
@@ -64,6 +64,7 @@ export function useInputEvent(
const handleInputChange = () => {
states.query = states.inputValue;
+ ctx.emit('inputChange', states.query);
handleQueryChange(states.query);
};
diff --git a/packages/devui-vue/devui/editable-select/src/editable-select.tsx b/packages/devui-vue/devui/editable-select/src/editable-select.tsx
index 1210d15045..fa2ccb0283 100644
--- a/packages/devui-vue/devui/editable-select/src/editable-select.tsx
+++ b/packages/devui-vue/devui/editable-select/src/editable-select.tsx
@@ -21,7 +21,7 @@ import './editable-select.scss';
export default defineComponent({
name: 'DEditableSelect',
props: editableSelectProps,
- emits: ['update:modelValue', 'focus', 'blur', 'clear', 'change', 'visibleChange', 'loadMore'],
+ emits: ['update:modelValue', 'focus', 'blur', 'clear', 'change', 'visibleChange', 'loadMore', 'inputChange'],
setup(props: EditableSelectProps, ctx: SetupContext) {
// name space
const ns = useNamespace('editable-select');
diff --git a/packages/devui-vue/devui/select/src/select.tsx b/packages/devui-vue/devui/select/src/select.tsx
index 8f843c7baa..28e650d2ff 100644
--- a/packages/devui-vue/devui/select/src/select.tsx
+++ b/packages/devui-vue/devui/select/src/select.tsx
@@ -29,7 +29,7 @@ import { FlexibleOverlay, Placement } from '../../overlay';
export default defineComponent({
name: 'DSelect',
props: selectProps,
- emits: ['toggle-change', 'value-change', 'update:modelValue', 'focus', 'blur', 'remove-tag', 'clear'],
+ emits: ['toggle-change', 'value-change', 'update:modelValue', 'focus', 'blur', 'remove-tag', 'clear', 'input-change'],
setup(props: SelectProps, ctx: SetupContext) {
const app = getCurrentInstance();
const t = createI18nTranslate('DSelect', app);
diff --git a/packages/devui-vue/devui/select/src/use-select.ts b/packages/devui-vue/devui/select/src/use-select.ts
index 1857c4d111..debfa7ce94 100644
--- a/packages/devui-vue/devui/select/src/use-select.ts
+++ b/packages/devui-vue/devui/select/src/use-select.ts
@@ -268,6 +268,7 @@ export default function useSelect(
const queryChange = (query: string) => {
filterQuery.value = query;
+ ctx.emit('input-change', query);
};
const isLoading = computed(() => typeof props.loading === 'boolean' && props.loading);
diff --git a/packages/devui-vue/docs/components/editable-select/index.md b/packages/devui-vue/docs/components/editable-select/index.md
index d78622a765..122ac38f4a 100644
--- a/packages/devui-vue/docs/components/editable-select/index.md
+++ b/packages/devui-vue/docs/components/editable-select/index.md
@@ -215,7 +215,7 @@ export default defineComponent({
```vue
-
+