uniapp实现单选框卡片选择器,支持微信小程序、H5等多端

采用uniapp-vue3实现的一款单选框卡片选择器,纯CSS实现样式和交互,提供丝滑的动画选中效果,支持不同主题配置,适配多端

可到插件市场下载尝试: https://ext.dcloud.net.cn/plugin?id=16901

  • 使用示例

请添加图片描述

  • 示例代码
<template>
	<view>
		<view class="light">
			<wo-card-radio v-model:options="state.items" v-model:defaultValue="state.default" @on-change="changeEvent"></wo-card-radio>
		</view>
		<view class="dark">
			<wo-card-radio v-model:options="state.items" v-model:defaultValue="state.default" v-model:styleObj="state.theme.dark" @on-change="changeEvent"></wo-card-radio>
		</view>
	</view>
</template>

<script setup lang="ts">
import { reactive } from 'vue';
const state = reactive({
	items: [
		{
			value: 'test',
			label: '中国农业银行',
			cardLinearColor: 'linear-gradient(45deg, #89c888, #1BA035)'
		},
		{
			value: 'test2',
			label: '中国工商银行',
			cardLinearColor: 'linear-gradient(45deg, #ff8c75, #FF4A3B)'
		},
		{
			value: 'test3',
			label: '中国建设银行',
			cardLinearColor: 'linear-gradient(45deg, #748DFB, #3859E8)'
		},
		{
			value: 'test2',
			label: '中国华夏银行',
			cardLinearColor: 'linear-gradient(45deg, #616161, #484848)'
		},
	],
	default: 'test3',
	theme: {
			light: {
				primary: 'blue',
				unselectedRadioBg: '#eaeaea',
				selectedBg: 'hsla(0,0%,100%,0.5)',
			},
			dark: {
				primary: 'blue',
				unselectedRadioBg: 'hsl(223,90%,30%)',
				selectedBg: 'hsla(223,90%,30%,0.5)'
			}
	}
});
const changeEvent = (el) => {
	console.log('点击:', el);
}
</script>

<style lang="scss" scoped>
	.light {
		border-radius: 10px;
		padding: 20rpx;
		font-size: 24rpx;
		background-color: hsl(223,90%,90%);
		margin: 20px;
		height: 300px;
		overflow: auto;
	}
	.dark {
		border-radius: 10px;
		padding: 20rpx;
		font-size: 24rpx;
		background-color: hsl(223,90%,10%);
		color: white;
		margin: 20px;
		height: 300px;
		overflow: auto;
	}
</style>

最近更新

  1. TCP协议是安全的吗?

    2024-03-10 00:50:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-10 00:50:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-10 00:50:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-10 00:50:03       20 阅读

热门阅读

  1. 深入理解Vue.js的模板语法和数据绑定

    2024-03-10 00:50:03       73 阅读
  2. 蓝桥杯2023年-平方差(数学)

    2024-03-10 00:50:03       37 阅读
  3. QWebEngineView与js交互

    2024-03-10 00:50:03       31 阅读
  4. L1-039 古风排版

    2024-03-10 00:50:03       26 阅读
  5. 主流开发环境和开发语言介绍

    2024-03-10 00:50:03       19 阅读
  6. python控制语句-1.2

    2024-03-10 00:50:03       22 阅读
  7. Linux/Ubuntu/Debian基本命令:命令行历史记录

    2024-03-10 00:50:03       20 阅读
  8. Ubuntu-18.04使用perccli查看PERC RAID的配置

    2024-03-10 00:50:03       25 阅读
  9. 掌握mysql,看完这篇文章就够了

    2024-03-10 00:50:03       26 阅读
  10. 管理npm源:如何使用nrm工具提升你的开发效率

    2024-03-10 00:50:03       21 阅读