更新记录
1.0.0(2025-03-13)
下载此版本
发布初版
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
app-vue |
× |
√ |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
鸿蒙元服务 |
× |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
Switch 开关
组件名: xt-switch
适配情况需自行尝试,开发时只测试了H5、APP、微信小程序
安装方式
本组件符合 easycom 规范,HBuilderX 3.1.0 起,只需将本组件导入项目,在页面 template 中即可直接使用,无需在页面中 import 和注册 components
注意事项
如何阻止事件冒泡
vue2:在组件上直接使用@click.native.stop
,如:<xt-icon @click.native.stop='click'></xt-icon>
;
vue3:由于 vue3 没有native
修饰符,所以不能直接在组件上使用.stop
修饰符,只能嵌套一层view
标签,在外层view
上添加@click.stop
阻止冒泡
基本用法
复制代码<template>
<view class="xt">
<view>基本用法</view>
<view style="display: flex;gap: 20rpx;">
<xt-switch :inactiveValue="0" :activeValue="1" :value="0"></xt-switch>
<xt-switch :inactiveValue="0" :activeValue="1" :value="1"></xt-switch>
</view>
<view>加载状态(不可点击)</view>
<view style="display: flex;gap: 20rpx;">
<xt-switch :inactiveValue="0" :activeValue="1" :value="0" loading></xt-switch>
<xt-switch :inactiveValue="0" :activeValue="1" :value="1" loading></xt-switch>
</view>
<view>禁用状态</view>
<view style="display: flex;gap: 20rpx;">
<xt-switch :inactiveValue="0" :activeValue="1" :value="0" disabled></xt-switch>
<xt-switch :inactiveValue="0" :activeValue="1" :value="1" disabled></xt-switch>
</view>
<view>自定义颜色</view>
<view style="display: flex;gap: 20rpx;">
<xt-switch :inactiveValue="0" :activeValue="1" :value="0" activeColor="red"
inactiveColor="#668899"></xt-switch>
<xt-switch :inactiveValue="0" :activeValue="1" :value="1" activeColor="red"
inactiveColor="#668899"></xt-switch>
</view>
<view>自定义大小</view>
<view style="display: flex;gap: 20rpx;">
<xt-switch :inactiveValue="0" :activeValue="1" :value="0" size="50rpx"></xt-switch>
<xt-switch :inactiveValue="0" :activeValue="1" :value="1" size="60rpx"></xt-switch>
</view>
</view>
</template>
<script>
export default {
data() {
return {
}
},
methods: {
}
}
</script>
<style lang="scss">
.xt {
padding: 0 20rpx;
padding-top: 50rpx;
display: flex;
flex-direction: column;
gap: 30rpx;
}
</style>
API
属性 |
类型 |
说明 |
默认值 |
value |
Number |String |Boolean |
绑定的值 |
|
activeValue |
Number |String |Boolean |
激活时的值 |
true |
activeColor |
String |
激活时的颜色 |
- |
inactiveValue |
Number |String |Boolean |
未激活时的值 |
false |
inactiveColor |
String |
未激活时的颜色 |
- |
disabled |
Boolean |
禁用状态 |
false |
stop |
Boolean |
是否阻止事件冒泡 |
false |
loading |
Boolean |
加载状态 |
false |
space |
String |Number |
圆点与外边框的距离 |
0 |
size |
String |
开关大小 |
40rpx |
Event
方法名 |
类型 |
说明 |
change |
Function |
开关状态改变时触发 |