TagInput
字段中的可移除标签:Enter、逗号和粘贴会拆分标签;退格键移除最后一个。
lin@northwind.exampletomas@northwind.example
<div className="w-400">
<TagInput label="Invite members" placeholder="name@example.com" defaultValue={["lin@northwind.example", "tomas@northwind.example"]} validate={email} />
</div>import { TagInput } from "@logicplanes/kaeso-ui";属性
aria-labelstring无障碍名称,用于没有可见标签的情况。
defaultValuestring[]首次渲染时的标签。
descriptionReactNode标签下方的一句帮助文字。
disabledboolean将其禁用:无法使用,并显示为变暗。
idstring控件的 ID,便于其他位置的标签指向它。
labelReactNode可见标签。
layout"horizontal" | "vertical"标签位于控件上方(
vertical)或旁边(horizontal)。namestring在表单中提交值时使用的字段名。
onValueChange((value: string[]) => void)每当添加或移除标签时调用,并传入所有标签。
optionalboolean在标签后加上“可选”,用于大多数字段为必填的表单。
placeholderstring没有值时显示的文字。
requiredboolean在表单中将其标记为必填。
separatorsstring[]除 Enter 外结束一个标签的字符。
validate((tag: string) => string | true)有效标签返回 true,否则返回说明问题的消息。无效标签保留,以危险色描边标出,并以提示框显示消息(屏幕阅读器也会朗读);错误绝不显示在字段下方,因此提交时也要用 toast 提示。
valuestring[]受控时的标签。