Skip to content

InputTag 标签输入框

xy-input-tag 适合“多个字符串标签”的录入场景,例如关键词、邮箱抄送、规则白名单和分类标签维护。

基础用法

默认通过 Enter 把当前输入提交成一个标签,适合最常见的关键词和标签录入。

基础用法标签输入

标签输入框用于输入多个标签值,支持回车添加和清空操作。

Vue组件库

分隔符、清空和上限

配合 delimiterclearablemax,可以快速搭出后台常见的批量标签录入条。

10.0.0.1
当前白名单:10.0.0.1

拖拽排序

开启 draggable 后,可直接拖动标签调整顺序,适合关键词权重、规则优先级和展示顺序编辑。

VueReactSvelteSolid
当前顺序:Vue / React / Svelte / Solid最近一次拖拽:暂未发生排序

表单场景

放在 xy-form-item 内部时,xy-input-tag 会参与 change / blur 校验链路。

行为约定

  • 默认使用 Enter 提交标签,也可切换为 Space
  • 输入为空时按 Backspace 会删除最后一个标签。
  • 开启 save-on-blur 后,失焦时会把当前输入自动保存为标签。
  • delimiter 命中时会自动按分隔符拆分多个标签。
  • 开启 draggable 后,可直接拖动标签调整顺序。

API

InputTag Attributes

属性说明类型默认值
model-value当前标签列表InputTagValueundefined
max最大标签数量numberundefined
trigger提交标签的触发键InputTagTrigger'Enter'
draggable是否启用拖拽排序booleanfalse
delimiter自动拆分标签的分隔符string | RegExp''
size组件尺寸ComponentSize跟随全局配置
disabled是否禁用booleanfalse
readonly是否只读booleanfalse
clearable是否显示清空按钮booleanfalse
clear-icon自定义清空图标string'mdi:close-circle'
validate-event是否触发表单校验booleantrue
autofocus原生 autofocusbooleanfalse
id原生 idstringundefined
tabindex原生 tabindexstring | number0
maxlength原生 maxlengthstring | numberundefined
minlength原生 minlengthstring | numberundefined
placeholder占位文本string''
autocomplete原生 autocompletestring'off'
save-on-blur失焦时是否保存当前输入booleantrue
aria-label原生 aria-labelstringundefined
name原生 namestringundefined
tag-status标签状态色ComponentStatus'neutral'
tag-round标签是否使用圆角样式booleanfalse
inputmode原生 inputmodeHTMLAttributes['inputmode']undefined
input-style原生输入框样式StyleValueundefined

InputTag Events

事件说明参数
update:model-value标签列表变化时触发InputTagValueChangeHandler
change标签列表确认变化时触发InputTagValueChangeHandler
input输入框内容变化时触发InputTagInputHandler
add-tag新增标签时触发InputTagAddTagHandler
remove-tag删除标签时触发InputTagRemoveTagHandler
drag-tag拖拽排序完成时触发InputTagDragTagHandler
focus获得焦点时触发InputTagFocusHandler
blur失去焦点时触发InputTagFocusHandler
clear清空全部标签时触发

InputTag Slots

插槽说明
prefix输入框前缀内容
suffix输入框后缀内容
tag自定义标签内容,接收 InputTagSlotProps

InputTag Exposes

暴露项说明类型
input原生输入框引用InputTagInstance["input"]
focus聚焦输入框InputTagInstance["focus"]
blur让输入框失焦InputTagInstance["blur"]
clear清空全部标签InputTagInstance["clear"]