<wxs src="./badge.wxs" module="this" /> 
 | 
<wxs src="../common/utils.wxs" module="_" /> 
 | 
  
 | 
<!-- 
 | 
  1. labelID 用于描述当前元素的文本 
 | 
  2. descriptionID 用于描述badge消息的文本 
 | 
  3. role=option一般用于多个内容合并焦点连续朗读 
 | 
--> 
 | 
  
 | 
<view 
 | 
  style="{{_._style([style, customStyle])}}" 
 | 
  class="{{this.getBadgeOuterClass({shape})}} class {{prefix}}-class" 
 | 
  aria-labelledby="{{labelID}}" 
 | 
  aria-describedby="{{descriptionID}}" 
 | 
  aria-role="{{ ariaRole || 'option'}}" 
 | 
> 
 | 
  <view id="{{labelID}}" class="{{classPrefix}}__content {{prefix}}-class-content" aria-hidden="true"> 
 | 
    <slot wx:if="{{!content}}" class="{{classPrefix}}__content-slot" /> 
 | 
    <text wx:else class="{{classPrefix}}__content-text">{{content}}</text> 
 | 
  </view> 
 | 
  <view 
 | 
    aria-hidden="true" 
 | 
    aria-label="{{ ariaLabel || _.getBadgeAriaLabel({dot, count, maxCount}) }}" 
 | 
    wx:if="{{this.isShowBadge({dot,count,showZero})}}" 
 | 
    id="{{descriptionID}}" 
 | 
    class="{{this.getBadgeInnerClass({dot, size, shape, count})}} {{prefix}}-has-count {{prefix}}-class-count" 
 | 
    style="{{this.getBadgeStyles({color, offset})}}" 
 | 
    aria-hidden="true" 
 | 
    aria-label="{{ ariaLabel || _.getBadgeAriaLabel({dot, count, maxCount}) }}" 
 | 
  > 
 | 
    <view 
 | 
      wx:if="{{shape == 'ribbon'}}" 
 | 
      class="t-badge__ribbon--before" 
 | 
      style="{{color ? 'border-color: ' + color : ''}}" 
 | 
    /> 
 | 
    {{ this.getBadgeValue({dot, count, maxCount}) }} 
 | 
    <view 
 | 
      wx:if="{{shape == 'ribbon'}}" 
 | 
      class="t-badge__ribbon--after" 
 | 
      style="{{color ? 'border-color: ' + color : ''}}" 
 | 
    /> 
 | 
  </view> 
 | 
  <slot name="count" /> 
 | 
</view> 
 |