更新记录

1.0.0(2025-08-12) 下载此版本

一个功能丰富的 uni-app 标签组件,支持多种主题、自定义样式和灵活配置。


平台兼容性

云端兼容性

阿里云 腾讯云 支付宝云

uni-app(4.76)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- - - -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 快应用-华为 快应用-联盟
- - - - - - - - - -

其他

多语言 暗黑模式 宽屏模式
× ×

jia-tag 标签组件

一个功能丰富的 uni-app 标签组件,支持多种主题、自定义样式和灵活配置。

特性

  • 🎨 多种预设主题(primary、success、warning、danger、purple)
  • 🌈 三种显示模式(dark、light、plain)
  • 🎯 灵活的自定义样式(背景色、字体色、边框等)
  • 📱 完美适配各种 uni-app 平台
  • ⚡ 轻量级,无外部依赖
  • 🔧 支持缩放、圆角、内外边距等高级配置

安装方法

在 uni-app 插件市场中搜索 jia-tag 并导入到项目中。

基础用法

<template>
  <view>
    <!-- 基础标签 -->
    <jia-tag text="基础标签"></jia-tag>

    <!-- 不同类型 -->
    <jia-tag text="主要" type="primary"></jia-tag>
    <jia-tag text="成功" type="success"></jia-tag>
    <jia-tag text="警告" type="warning"></jia-tag>
    <jia-tag text="危险" type="danger"></jia-tag>
    <jia-tag text="紫色" type="purple"></jia-tag>

    <!-- 不同主题 -->
    <jia-tag text="深色主题" type="primary" theme="dark"></jia-tag>
    <jia-tag text="浅色主题" type="primary" theme="light"></jia-tag>
    <jia-tag text="朴素主题" type="primary" theme="plain"></jia-tag>
  </view>
</template>

API

Props

属性名 类型 默认值 说明
text String '' 标签文本内容
type String 'primary' 标签类型,可选值:primary/success/warning/danger/purple
theme String 'dark' 主题模式,可选值:dark/light/plain
background String '' 自定义背景色,设置后 type 失效
color String '' 自定义文字颜色
size Number/String 24 字体大小,单位 rpx
radius Number/String 8 圆角大小,单位 rpx
isBorder Boolean true 是否显示边框
borderColor String '' 自定义边框颜色
padding Array ['16rpx', '32rpx'] 内边距,格式:[上, 右, 下, 左]
margin Array ['0rpx', '0rpx'] 外边距,格式:[上, 右, 下, 左]
scaleRatio Number 1 缩放比例
originLeft Boolean false 左侧缩放原点
originRight Boolean false 右侧缩放原点
highlight Boolean false 是否有点击高亮效果
index Number 0 标签索引,用于事件回调

Events

事件名 说明 回调参数
click 点击标签时触发 { index: Number }

Slots

插槽名 说明
default 自定义标签内容

使用示例

基础标签

<template>
  <view class="tag-container">
    <jia-tag text="默认标签"></jia-tag>
    <jia-tag text="主要" type="primary"></jia-tag>
    <jia-tag text="成功" type="success"></jia-tag>
    <jia-tag text="警告" type="warning"></jia-tag>
    <jia-tag text="危险" type="danger"></jia-tag>
    <jia-tag text="紫色" type="purple"></jia-tag>
  </view>
</template>

<style>
.tag-container {
  display: flex;
  flex-wrap: wrap;
  gap: 20rpx;
}
</style>

不同主题

<template>
  <view>
    <!-- 深色主题 -->
    <view class="section">
      <text class="title">深色主题</text>
      <view class="tag-container">
        <jia-tag text="主要" type="primary" theme="dark"></jia-tag>
        <jia-tag text="成功" type="success" theme="dark"></jia-tag>
        <jia-tag text="警告" type="warning" theme="dark"></jia-tag>
      </view>
    </view>

    <!-- 浅色主题 -->
    <view class="section">
      <text class="title">浅色主题</text>
      <view class="tag-container">
        <jia-tag text="主要" type="primary" theme="light"></jia-tag>
        <jia-tag text="成功" type="success" theme="light"></jia-tag>
        <jia-tag text="警告" type="warning" theme="light"></jia-tag>
      </view>
    </view>

    <!-- 朴素主题 -->
    <view class="section">
      <text class="title">朴素主题</text>
      <view class="tag-container">
        <jia-tag text="主要" type="primary" theme="plain"></jia-tag>
        <jia-tag text="成功" type="success" theme="plain"></jia-tag>
        <jia-tag text="警告" type="warning" theme="plain"></jia-tag>
      </view>
    </view>
  </view>
</template>

自定义样式

<template>
  <view class="tag-container">
    <!-- 自定义颜色 -->
    <jia-tag 
      text="自定义背景" 
      background="#CCCCCC" 
      color="#fff"
    ></jia-tag>

    <!-- 无边框 -->
    <jia-tag 
      text="无边框" 
      :isBorder="false" 
      background="#fff" 
      color="#000"
    ></jia-tag>

    <!-- 圆角标签 -->
    <jia-tag 
      text="圆角" 
      radius="50"
    ></jia-tag>

    <!-- 大字体 -->
    <jia-tag 
      text="字体大小" 
      type="danger" 
      size="30"
    ></jia-tag>

    <!-- 自定义内边距 -->
    <jia-tag 
      text="padding" 
      type="purple" 
      :padding="['16rpx', '100rpx']"
    ></jia-tag>

    <!-- 自定义边框颜色 -->
    <jia-tag 
      text="边框颜色" 
      background="#CCCCCC" 
      color="#fff" 
      borderColor="red"
    ></jia-tag>

    <!-- 缩放效果 -->
    <jia-tag 
      text="originLeft" 
      type="warning" 
      :scaleRatio="1.2" 
      originLeft
    ></jia-tag>

    <!-- 点击高亮 -->
    <jia-tag 
      text="点击效果" 
      type="success" 
      highlight
      @click="handleClick"
    ></jia-tag>
  </view>
</template>

<script>
export default {
  methods: {
    handleClick() {
      uni.showToast({
        title: '标签被点击',
        icon: 'none'
      });
    }
  }
}
</script>

使用插槽

<template>
  <view class="tag-container">
    <!-- 自定义内容 -->
    <jia-tag type="purple" theme="plain" @click="handleClick">
      <text>自定义内容</text>
      <text class="icon">×</text>
    </jia-tag>

    <!-- 图标 + 文字 -->
    <jia-tag type="primary">
      <text>🏷️ 带图标</text>
    </jia-tag>
  </view>
</template>

主题色彩

预设颜色

类型 深色主题 浅色主题 朴素主题
primary #465cff 浅色背景 + #465cff 文字 透明背景 + #465cff 边框
success #09be4f 浅色背景 + #09be4f 文字 透明背景 + #09be4f 边框
warning #ffb703 浅色背景 + #ffb703 文字 透明背景 + #ffb703 边框
danger #ff2b2b 浅色背景 + #ff2b2b 文字 透明背景 + #ff2b2b 边框
purple #6831ff 浅色背景 + #6831ff 文字 透明背景 + #6831ff 边框

注意事项

  1. 当设置了 background 属性时,type 属性将失效
  2. paddingmargin 数组支持 1-4 个值,遵循 CSS 简写规则
  3. 缩放功能建议配合 originLeftoriginRight 使用,避免布局偏移
  4. 在小程序中使用时,建议在 pages.json 中配置 easycom 自动引入

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议