TagInput

字段中的可移除标签:Enter、逗号和粘贴会拆分标签;退格键移除最后一个。

查看源码
lin@northwind.exampletomas@northwind.example
import { TagInput } from "@logicplanes/kaeso-ui";

属性

  • aria-label
    string

    无障碍名称,用于没有可见标签的情况。

  • defaultValue
    string[]

    首次渲染时的标签。

  • description
    ReactNode

    标签下方的一句帮助文字。

  • disabled
    boolean

    将其禁用:无法使用,并显示为变暗。

  • id
    string

    控件的 ID,便于其他位置的标签指向它。

  • label
    ReactNode

    可见标签。

  • layout
    "horizontal" | "vertical"

    标签位于控件上方(vertical)或旁边(horizontal)。

  • name
    string

    在表单中提交值时使用的字段名。

  • onValueChange
    ((value: string[]) => void)

    每当添加或移除标签时调用,并传入所有标签。

  • optional
    boolean

    在标签后加上“可选”,用于大多数字段为必填的表单。

  • placeholder
    string

    没有值时显示的文字。

  • required
    boolean

    在表单中将其标记为必填。

  • separators
    string[]

    除 Enter 外结束一个标签的字符。

  • validate
    ((tag: string) => string | true)

    有效标签返回 true,否则返回说明问题的消息。无效标签保留,以危险色描边标出,并以提示框显示消息(屏幕阅读器也会朗读);错误绝不显示在字段下方,因此提交时也要用 toast 提示。

  • value
    string[]

    受控时的标签。