riku
2026-04-02 3282e95db0207ee133d1e98d9771dec9d83b0fc4
miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxml
@@ -1,56 +1 @@
<wxs src="../common/utils.wxs" module="_" />
<view
  style="{{_._style([style, customStyle])}}"
  class="{{_.cls(classPrefix, [placement, theme, ['checked', checked], ['block', block]])}} class {{prefix}}-class"
  aria-role="checkbox"
  aria-checked="{{checked ? (indeterminate ? 'mixed' : true) : false}}"
  aria-disabled="{{disabled ? true : false}}"
  bind:tap="onChange"
  tabindex="{{tabindex}}"
>
  <view
    wx:if="{{theme == 'default'}}"
    class="{{_.cls(classPrefix + '__icon', [placement, ['checked', checked], ['disabled', disabled]])}} {{prefix}}-class-icon"
  >
    <view wx:if="{{_.isArray(icon)}}" class="{{classPrefix}}__icon">
      <image src="{{checked ? icon[0] : icon[1]}}" class="{{classPrefix}}__icon-image" webp />
    </view>
    <block wx:else>
      <t-icon
        wx:if="{{checked && (icon == 'circle' || icon == 'rectangle')}}"
        name="{{indeterminate ? ('minus-' + icon + '-filled') : ('check-' + icon + '-filled')}}"
        class="{{_.cls(classPrefix + '__icon-wrapper', [])}}"
      />
      <t-icon
        wx:if="{{checked && icon == 'line'}}"
        name="{{indeterminate ? ('minus-' + icon + '-filled') : 'check'}}"
        class="{{_.cls(classPrefix + '__icon-wrapper', [])}}"
      />
      <view
        wx:elif="{{!checked && (icon == 'circle' || icon == 'rectangle')}}"
        class="{{_.cls(classPrefix + '__icon-' + icon, [['disabled', disabled]])}}"
      />
      <view wx:if="{{!checked && icon == 'line'}}" class="placeholder"></view>
    </block>
  </view>
  <view class="{{classPrefix}}__content" data-target="text" catch:tap="onChange">
    <view
      class="{{_.cls(classPrefix + '__title', [['disabled', disabled], ['checked', checked]])}} {{prefix}}-class-label"
      style="-webkit-line-clamp:{{maxLabelRow}}"
    >
      {{label}}
      <slot />
      <slot name="label" />
    </view>
    <view
      class="{{_.cls(classPrefix + '__description', [['disabled', disabled]])}} {{prefix}}-class-content "
      style="-webkit-line-clamp:{{maxContentRow}}"
      >{{content}}<slot name="content"
    /></view>
  </view>
  <view
    wx:if="{{theme == 'default' && !borderless}}"
    class="{{_.cls(classPrefix + '__border', [placement])}} {{prefix}}-class-border"
  />
</view>
<wxs src="../common/utils.wxs" module="_"/><view id="{{tId}}" style="{{_._style([style, customStyle])}}" class="{{_.cls(classPrefix, [placement, theme, ['checked', checked], ['block', block], ['disabled', _disabled]])}} class {{prefix}}-class" aria-role="checkbox" aria-checked="{{checked ? (indeterminate ? 'mixed' : true) : false}}" aria-disabled="{{_disabled ? true : false}}" mut-bind:tap="handleTap" tabindex="{{tabindex}}"><view wx:if="{{theme == 'default'}}" class="{{_.cls(classPrefix + '__icon', [placement, ['checked', checked], ['disabled', _disabled]])}} {{prefix}}-class-icon"><slot name="icon" wx:if="{{icon === 'slot'}}"/><view wx:elif="{{_.isArray(icon)}}" class="{{classPrefix}}__icon"><image src="{{checked ? indeterminate && icon[2] ? icon[2] : icon[0] : icon[1]}}" class="{{classPrefix}}__icon-image"/></view><block wx:else><t-icon wx:if="{{checked && (icon == 'circle' || icon == 'rectangle')}}" name="{{indeterminate ? ('minus-' + icon + '-filled') : ('check-' + icon + '-filled')}}" class="{{_.cls(classPrefix + '__icon-wrapper', [])}}"/><t-icon wx:if="{{checked && icon == 'line'}}" name="{{indeterminate ? ('minus-' + icon + '-filled') : 'check'}}" class="{{_.cls(classPrefix + '__icon-wrapper', [])}}"/><view wx:elif="{{!checked && (icon == 'circle' || icon == 'rectangle')}}" class="{{_.cls(classPrefix + '__icon-' + icon, [['disabled', _disabled]])}}"/><view wx:if="{{!checked && icon == 'line'}}" class="placeholder"></view></block></view><view class="{{classPrefix}}__content" data-target="text" mut-bind:tap="handleTap"><view class="{{_.cls(classPrefix + '__title', [['disabled', _disabled], ['checked', checked]])}} {{prefix}}-class-label" style="-webkit-line-clamp:{{maxLabelRow}}"><block wx:if="{{label}}">{{label}}</block><slot/><slot name="label"/></view><view class="{{_.cls(classPrefix + '__description', [['disabled', _disabled]])}} {{prefix}}-class-content" style="-webkit-line-clamp:{{maxContentRow}}"><block wx:if="{{content}}">{{content}}</block><slot name="content"/></view></view><view wx:if="{{theme == 'default' && !borderless}}" class="{{_.cls(classPrefix + '__border', [placement])}} {{prefix}}-class-border"/></view>