主题设置

选择强调色与基础色,保存后全站生效。

强调色
基础色
点击切换锁定状态
November 24, 2025

组合输入框

版本:^2.7.1

AI 无处不在,对话式界面已经成了新常态。我们觉得,是时候让 Flux 拥有一个专为消息输入而生的组件了。

这就是 Composer:一个可配置的消息输入组件,支持操作按钮和富文本功能。下面一起来看看。

<flux:composer wire:model="prompt" placeholder="How can I help you today?">
    <x-slot name="actionsLeading">
        <flux:button size="sm" variant="subtle" icon="paper-clip" />
    </x-slot>

    <x-slot name="actionsTrailing">
        <flux:button type="submit" size="sm" variant="primary" icon="paper-airplane" />
    </x-slot>
</flux:composer>

两种布局

默认情况下,操作按钮位于输入框下方的单独一行中。添加 inline 属性即可将它们放到输入框旁边,形成更紧凑的布局——非常适合单行输入场景。

<flux:composer inline rows="1" ...>
    ...
</flux:composer>

富文本

需要格式化能力?只需在 input 插槽中传入一个编辑器组件,就可以将默认的 textarea 换成完整的富文本编辑器。

<flux:composer wire:model="prompt" rows="3" ...>
    <x-slot name="input">
        <flux:editor variant="borderless" toolbar="bold italic bullet ordered | link" />
    </x-slot>
    ...
</flux:composer>

提交行为

默认情况下,按下 Cmd/Ctrl + Enter 会提交表单。若想要类似聊天的体验,让 Enter 直接发送消息,只需添加 submit="enter" 即可。

<flux:composer submit="enter" ...>
    ...
</flux:composer>

高度控制

通过 rows 设置初始高度,并用 max-rows 限制最大高度。输入内容增多时,输入框会自动变高,到达最大高度后则变为可滚动。

<flux:composer rows="4" max-rows="8" ...>
    ...
</flux:composer>

可访问性

当然,我们也花了大量精力来确保该组件在键盘导航、焦点行为以及正确的 aria-label 等方面都符合预期,这样依赖屏幕阅读器的用户也能同样顺畅地使用它。

查看 Composer 文档以了解更多示例和完整的 API 参考。

© 2025 FluxProMax™. All Rights Reserved.

备案号:皖ICP备13019729号-11

网站导航