Toggle Sidebar B
header.lightDarkMode D

Tags Input

Free-form tag entry. Type, press Enter or comma, get a chip. Backspace removes the last chip.

Default

Pre-seeded list of tags.

vue
nuxt
tailwind

With delimiter

Set delimiter to commit a tag on a different key (here, space).

one

Disabled

Pass disabled to block adding or removing tags.

vue
nuxt

API Reference

Props, events, and slots for each sub-component.

TagsInput

Props

PropTypeDefaultDescription
modelValuestring[][]Current tags. Supports v-model.
addOnPastebooleanfalseAuto-split pasted content on commas/newlines into tags.
duplicatebooleanfalseAllow duplicate tags.
delimiterstring | RegExp","Separator that splits typed input into tags.

Events

EventDescription
update:modelValueFires when tags are added or removed. Enables v-model.
add-tagFires with the value of a newly added tag.
remove-tagFires with the value of a removed tag.

TagsInputItem / TagsInputItemText / TagsInputItemDelete

Props

PropTypeDefaultDescription
valuestring(TagsInputItem) The tag this chip represents. ItemText renders the label; ItemDelete is the remove button.

TagsInputInput

Props

PropTypeDefaultDescription
placeholderstringPlaceholder for the free-text entry field.

Accessibility

Keyboard shortcuts and ARIA behavior.

Keyboard

ShortcutDescription
EnterAdds the typed text as a new tag.
BackspaceRemoves the last tag when the input is empty.
Moves focus to the previous tag.
Moves focus to the next tag.
DeleteRemoves the focused tag.
  • A comma also commits the typed text as a new tag.
  • Each tag is focusable and can be removed individually.
  • The field is labelled with role-appropriate ARIA so additions and removals are announced.