Aller au contenu principal

Étiquette

Étiquettes servant au marquage et à la sélection.

Utilisation de base​

Utilisation de base
Étiquette par défautÉtiquette principaleÉtiquette de succèsÉtiquette arrondieÉtiquette avec contourEncre de ChineStyle chinoisBibliothèque de composants
import { useState } from 'react'
import { LhTag } from '@lh-ui/react'

export default function Demo() {
const [tags, setTags] = useState(['Encre', 'Style chinois', 'Bibliothèque de composants'])

const handleClose = (tag: string) => {
setTags((prev) => prev.filter((item) => item !== tag))
}

return (
<>
<LhTag>Étiquette par défaut</LhTag>
<LhTag type="primary">Étiquette principale</LhTag>
<LhTag type="success">Étiquette de succès</LhTag>
<LhTag type="warning" round>Étiquette arrondie</LhTag>
<LhTag type="danger" hit>Étiquette avec bordure</LhTag>
{tags.map((tag) => (
<LhTag key={tag} closable onClose={() => handleClose(tag)}>
{tag}
</LhTag>
))}
</>
)
}

Tag Props​

PropDescriptionTypeOptionsValeur par défaut
typeType'text' | 'primary' | 'success' | 'warning' | 'danger' | 'info'—'text'
sizeTaille'large' | 'middle' | 'small'—Selon ConfigProvider
closableFermableboolean—false
disabledDésactivé (ne répond ni au clic ni à la fermeture)boolean—false
roundAngle arrondiboolean—false
hitForme avec bordureboolean—false
sxRaccourci de mise en pageSxProps——

Événements de Tag​

ÉvénementDescriptionSignature du callbackÉquivalent Vue
onClickDéclenché au clic (lorsque onClick est fourni et que l'état n'est pas disabled, le composant est promu role="button")(event: MouseEvent) => void@click
onCloseClic sur le bouton de fermeture(event: MouseEvent) => void@close
Interaction clavier

Une étiquette cliquable est rendue en role="button" et répond à Enter / Space. Voir Accessibilité.

Démontage à la fermeture (amélioration React)

Après un clic sur le bouton de fermeture, le Tag est immédiatement démonté du DOM, et onClose n'est émis qu'ensuite. Dans lh-ui-plus, @close émet seulement l'événement et c'est un v-if externe qui retire le nœud ; React ne dispose pas de directive, et exiger un état externe pour contrôler le démontage dans un scénario de pur affichage serait trop lourd, la bibliothèque intègre donc l'état fermé. Pour garder le contrôle total de la visibilité, un simple rendu conditionnel autour du composant suffit.

Styles​

import '@lh-ui/react/style/tag'