diff --git a/apps/docs/zh/components/editorSender/index.md b/apps/docs/zh/components/editorSender/index.md index b65e8de0..cce0a4f4 100644 --- a/apps/docs/zh/components/editorSender/index.md +++ b/apps/docs/zh/components/editorSender/index.md @@ -138,6 +138,7 @@ title: 'EditorSender' | 事件名 | 说明 | 回调参数 | | ------------------ | ------------------------ | --------------------------------------------------------------- | | `submit` | 提交内容时触发 | `payload: SubmitResult` - 包含提交的各类内容 | +| `clear` | 清空内容时触发 | `txt: string` - 参数txt为清空后插入的文本 | | `change` | 输入内容发生变化时触发 | 无 | | `cancel` | 取消加载状态时触发 | 无 | | `showAtDialog` | 显示@用户弹窗时触发 | 无 | @@ -149,6 +150,7 @@ title: 'EditorSender' | 方法名 | 类型 | 描述 | | ------------------ | ----------------------------------------------------------------- | --------------------------------------------------------------- | +| `submit` | () => void | 提交输入内容 | | `getCurrentValue` | () => SubmitResult | 获取当前输入框的内容,包括文本、HTML和各类标签信息 | | `focusToStart` | () => void | 将光标聚焦到文本最前方 | | `focusToEnd` | () => void | 将光标聚焦到文本最后方 | diff --git a/packages/core/src/components/EditorSender/index.vue b/packages/core/src/components/EditorSender/index.vue index 344972f7..2cb2b8fd 100644 --- a/packages/core/src/components/EditorSender/index.vue +++ b/packages/core/src/components/EditorSender/index.vue @@ -185,6 +185,7 @@ function onClear(txt?: string) { chat.value!.clear(txt); // 将光标移动到末尾 focusToEnd(); + emits('clear',txt); } // 点击内容区域聚焦输入框 function onContentMouseDown() { @@ -471,6 +472,7 @@ onBeforeUnmount(() => { /** 暴露方法 */ defineExpose({ + submit: onSubmit, getCurrentValue, focusToStart, focusToEnd, diff --git a/packages/core/src/components/EditorSender/types.d.ts b/packages/core/src/components/EditorSender/types.d.ts index 2e0b6d69..f83f5a90 100644 --- a/packages/core/src/components/EditorSender/types.d.ts +++ b/packages/core/src/components/EditorSender/types.d.ts @@ -74,6 +74,7 @@ export interface EditorSenderEmits { (e: 'submit', payload: SubmitResult): void; (e: 'change'): void; (e: 'cancel'): void; + (e: 'clear', txt: string): void; (e: 'showAtDialog'): void; (e: 'showSelectDialog', key: string, elm: HTMLElement): void; (e: 'showTagDialog', prefix: string): void;