Tag 标签

介绍

用于标记关键词和概括主要内容。

引入

import { Tag } from "@taroify/core"

代码演示

基础用法

通过 color 属性控制标签颜色。

<Tag>标签</Tag>
<Tag color="primary">标签</Tag>
<Tag color="info">标签</Tag>
<Tag color="success">标签</Tag>
<Tag color="warning">标签</Tag>
<Tag color="danger">标签</Tag>

空心样式

设置 variant="outlined" 属性设置为空心样式。

<Tag color="primary" variant="outlined">
  标签
</Tag>

圆角样式

通过 shape="rounded" 设置为圆角样式。

<Tag color="primary" shape="rounded">
  标签
</Tag>

右侧圆角样式

通过 shape="roundedRight" 设置为圆角样式。

<Tag color="primary" shape="roundedRight">
  标签
</Tag>

左侧圆角样式

通过 shape="roundedLeft" 设置为圆角样式。

<Tag color="primary" shape="roundedLeft">
  标签
</Tag>

可关闭标签

添加 closeable 属性表示标签是可关闭的,关闭标签时会触发 onClose 事件,在 onClose 事件中可以执行隐藏标签的逻辑。

function CloseTag() {
  const [visible, setVisible] = useState(true)
  return (
    <>
      {visible && (
        <Tag color="primary" size="medium" closeable onClose={() => setVisible(false)}>
          标签
        </Tag>
      )}
    </>
  )
}

标签大小

通过 size 属性调整标签大小。

<Tag color="primary" children="标签" />
<Tag color="primary" size="medium" children="标签" />
<Tag color="primary" size="large" children="标签" />

自定义颜色

通过 colortextColor 属性设置标签颜色。

<Tag style={{ backgroundColor: "#7232dd" }} children="标签" />
<Tag style={{ backgroundColor: "#ffe1e1", color: "#ad0000" }} children="标签" />
<Tag style={{ color: "#7232dd" }} variant="outlined" children="标签" />

API

Props

参数说明类型默认值
size大小,可选值为 large mediumstring-
color类型,可选值为 primary info success danger warningstringdefault
shape形状,可选值为 rounded roundedRight roundedLeftstringsquare
closeable是否为可关闭标签booleanfalse

Events

事件名说明回调参数
onClick点击时触发event: ITouchEvent
onClose关闭标签时触发event: ITouchEvent

主题定制

样式变量

组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件。

名称默认值描述
--tag-paddingvar(0 var(--padding-base))-
--tag-colorvar(--white)-
--tag-font-sizevar(--font-size-sm)-
--tag-border-radius2px * $hd-
--tag-line-height16px * $hd-
--tag-medium-padding2px * $hd 6px * $hd-
--tag-large-paddingvar(--padding-base) var(--padding-xs)-
--tag-large-border-radiusvar(--border-radius-md)-
--tag-large-font-sizevar(--font-size-md)-
--tag-rounded-border-radiusvar(--border-radius-max)-
--tag-rounded-right-paddingvar(--tag-rounded-right-padding, 0 (6px * $hd) 0 var(--padding-base)-
--tag-rounded-left-paddingvar(--tag-rounded-left-padding, 0 var(--padding-base) 0 (6px * $hd))-
--tag-rounded-right-medium-padding2px * $hd 8px * $hd 2px * $hd 6px * $hd-
--tag-rounded-left-medium-padding2px * $hd 6px * $hd 2px * $hd 8px * $hd-
--tag-rounded-right-large-paddingvar(--padding-base) 6px * $hd var(--padding-base) var(--padding-xs)-
--tag-rounded-left-large-paddingvar(--padding-base) var(--padding-xs) var(--padding-base) 6px * $hd-
--tag-default-colorvar(--gray-6)-
--tag-default-background-colorvar(--gray-6)-
--tag-primary-colorvar(--primary-color)-
--tag-primary-background-colorvar(--primary-color)-
--tag-info-colorvar(--info-color)-
--tag-info-background-colorvar(--info-color)-
--tag-success-colorvar(--success-color)-
--tag-success-background-colorvar(--success-color)-
--tag-warning-colorvar(--warning-color)-
--tag-warning-background-colorvar(--warning-color)-
--tag-danger-colorvar(--danger-color)-
--tag-danger-background-colorvar(--danger-color)-
--tag-outlined-background-colorvar(--white)-
--tag-border-colorvar(--tag-border-color, currentColor)-