Badge 徽标

介绍

在右上角展示徽标数字或小红点。

引入

  1. import Vue from 'vue';
  2. import { Badge } from 'vant';
  3. Vue.use(Badge);

代码演示

基础用法

设置 content 属性后,Badge 会在子元素的右上角显示对应的徽标,也可以通过 dot 来显示小红点。

  1. <van-badge :content="5">
  2. <div class="child" />
  3. </van-badge>
  4. <van-badge dot>
  5. <div class="child" />
  6. </van-badge>
  7. <style>
  8. .child {
  9. width: 36px;
  10. height: 36px;
  11. background: #f2f3f5;
  12. border-radius: 4px;
  13. }
  14. </style>

最大值

设置 max 属性后,当 content 的数值超过最大值时,会自动显示为 {max}+

  1. <van-badge :content="20" max="9">
  2. <div class="child" />
  3. </van-badge>
  4. <van-badge :content="200" max="99">
  5. <div class="child" />
  6. </van-badge>

自定义颜色

通过 color 属性来设置徽标的颜色。

  1. <van-badge :content="5" color="#1989fa">
  2. <div class="child" />
  3. </van-badge>
  4. <van-badge dot color="#1989fa">
  5. <div class="child" />
  6. </van-badge>

独立展示

当 Badge 没有子元素时,会作为一个独立的元素进行展示。

  1. <van-badge :content="200" max="99" />

API

Props

参数说明类型默认值
content徽标内容number | string-
color徽标背景颜色string#ee0a24
dot是否展示为小红点booleanfalse
max最大值,超过最大值会显示 {max}+,仅当 content 为数字时有效number | string-

Slots

名称说明
default徽标包裹的子元素
content自定义徽标内容

样式变量

组件提供了下列 Less 变量,可用于自定义样式,使用方法请参考主题定制

名称默认值描述
@badge-size16px-
@badge-color@white-
@badge-padding0 3px-
@badge-font-size@font-size-sm-
@badge-font-weight@font-weight-bold-
@badge-border-width@border-width-base-
@badge-background-color@red-
@badge-dot-color@red-
@badge-dot-size8px-
@badge-font-family-apple-system-font, Helvetica Neue, Arial, sans-serif-

Badge 徽标 - 图1