Skip to content

AiEditorSender 面板输入

AiEditorSender 是一个功能更强大的 AI 对话输入组件,灵感源自 Element Plus X EditorSender。它集成了附件展示、工具栏及自定义插槽,适用于复杂的 AI 交互场景。

基础用法

包含默认的输入框、字数统计及发送按钮。

基础用法

附件展示与操作

内置附件列表布局(仅展示用,上传逻辑需外部控制),支持预览和移除。

代码片段.ts
界面原型.png
附件展示与操作

状态与工具栏插槽

通过 toolbaractions 插槽,你可以自由扩展输入框底部的业务逻辑。

状态与工具栏插槽

API

Props

属性名说明类型默认值
modelValue输入内容双向绑定string''
placeholder占位文本string''
disabled是否禁用booleanfalse
loading是否处于加载/发送中状态booleanfalse
attachments附件列表AttachmentItem[][]
showWordLimit是否展示字数限制booleantrue
maxLength最大字数限制numberundefined
rows默认初始行数number1

Events

事件名说明回调参数
update:modelValue内容变化时触发(value: string)
send点击发送或按 Enter (不加 Shift) 时触发(value: string)
change内容改变完成时触发(value: string)
remove-attachment点击附件移除按钮时触发(index: number, item: AttachmentItem)
clear清空内容时触发()

Slots

插槽名说明
header顶部附件展示区插槽
toolbar底部左侧快捷工具栏插槽
actions底部右侧追加操作插槽 (在字数统计后,发送按钮前)
submit自定义发送按钮

主题变量

变量名默认值
--yh-ai-editor-sender-bgvar(--yh-bg-color-overlay)
--yh-ai-editor-sender-radius12px
--yh-ai-editor-sender-border1px solid var(--yh-border-color)
--yh-ai-editor-sender-shadow0 4px 16px rgba(0, 0, 0, 0.08)
--yh-ai-editor-sender-focus-border1px solid var(--yh-color-primary)

Released under the MIT License.