You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
1.1 KiB
33 lines
1.1 KiB
<wxs src="../common/utils.wxs" module="_" />
|
|
|
|
<view
|
|
style="{{_._style([style, customStyle])}}"
|
|
class="class {{ prefix }}-class {{classPrefix}}"
|
|
bind:tap="handleSwitch"
|
|
aria-checked="{{checked}}"
|
|
aria-disabled="{{disabled}}"
|
|
aria-role="switch"
|
|
>
|
|
<view
|
|
class="{{_.cls(classPrefix + '__body', [['checked', checked], ['disabled', disabled], size])}} {{prefix}}-class-body"
|
|
>
|
|
<view
|
|
class="{{_.cls(classPrefix + '__dot', [['checked', checked], ['plain', label.length != 2 && icon.length != 2 && !loading], size])}} {{prefix}}-class-dot"
|
|
aria-hidden="{{true}}"
|
|
>
|
|
<view
|
|
wx:if="{{label}}"
|
|
class="{{_.cls(classPrefix + '__label', [['checked', checked], ['disabled', disabled], size])}} {{prefix}}-class-label"
|
|
>
|
|
<t-loading wx:if="{{loading}}" inherit-color size="32rpx" />
|
|
<text wx:elif="{{label.length == 2}}">{{checked ? label[1] : label[0]}}</text>
|
|
<t-icon
|
|
wx:elif="{{icon.length == 2}}"
|
|
name="{{checked ? icon[1] : icon[0]}}"
|
|
t-class="{{_.cls(classPrefix + '__icon', [['checked', checked], size])}}"
|
|
/>
|
|
</view>
|
|
</view>
|
|
</view>
|
|
</view>
|