TUI

0.3.7
Tag 标签
用于标记状态或分类的小型标签,提供多种语义类型和尺寸可选。
基础用法
最常见的标签形式
默认
审核通过
已冻结
选中
示例代码
vue
<template>
  <TsTag>默认</TsTag>
  <TsTag type="valid">审核通过</TsTag>
  <TsTag type="freeze">已冻结</TsTag>
  <TsTag type="selected">选中</TsTag>
</template>
尺寸
通过 size 属性设置尺寸,支持 mini、small、medium、large 四种预设值。 若不传入 size ,则默认使用 medium 尺寸。
超小标签
小标签
中等标签
大标签
示例代码
vue
<template>
  <TsTag size="small">小标签</TsTag>
  <TsTag size="medium">中等标签</TsTag>
  <TsTag size="large">大标签</TsTag>
</template>
可交互效果
通过 @click 事件识别可交互效果, 提供 cursor 和 hover 的样式。暂时不提供 props 控制交互效果的开启。
可交互效果
示例代码
vue
<template>
  <TsTag @click="() => {}">可交互效果</TsTag>
</template>
关闭效果
通过 closeable 来实现可关闭标签
可关闭标签0
示例代码
vue
<template>
  <div style="margin-bottom: 12px">
    <TsButton @click="handleAddCloseTag">增加可关闭标签</TsButton>
  </div>
  <div class="item-flex-center-wrap">
    <TsTag closeable @close="handleCloseTag(index)" v-for="(item, index) in closeTagList" :key="index">关闭{{ item.key }}</TsTag>
  </div>
</template>
<script setup lang="ts">
  import { ref } from 'vue';

  interface MockTagItem {
    key: number;
  }

  const closeTagList = ref<MockTagItem[]>([{ key: 0 }]);

  const handleAddCloseTag = () => {
    closeTagList.value.push({ key: closeTagList.value.length ? closeTagList.value[closeTagList.value.length - 1].key + 1 : 0 });
  };

  const handleCloseTag = (index: number) => {
    closeTagList.value.splice(index, 1);
  };
</script>
状态类型、自定义样式
通过 type 属性设置标签的语义类型,获取使用参数来自定义样式
默认
冻结
有效
选中
初始
申请中
草稿
置顶
自定义颜色
示例代码
vue
<template>
  <TsTag type="original">默认</TsTag>
  <TsTag type="freeze">冻结</TsTag>
  <TsTag type="valid">有效</TsTag>
  <TsTag type="selected">选中</TsTag>
  <TsTag type="initial">初始</TsTag>
  <TsTag type="apply">申请中</TsTag>
  <TsTag type="draft">草稿</TsTag>
  <TsTag type="featured">推荐</TsTag>
  <TsTag type="pinned">置顶</TsTag>
  <TsTag color="#1890ff" bg="#e6f7ff">自定义颜色</TsTag>
</template>
属性 Props
属性名
说明
类型
可选值
默认值
type
语义类型
string
original / freeze / valid / selected / initial / apply / draft / featured / pinned
original
size
标签尺寸
string
mini / small / medium / large / [number, number] / [string, string]
medium
closeable
是否可关闭
boolean
false
color
自定义颜色
string
bg
自定义背景颜色
string
事件 Events
事件名
说明
类型
close
关闭时触发