首页 > 其他分享 >uni-app UI组件

uni-app UI组件

时间:2024-12-06 11:00:39浏览次数:11  
标签:zll app height bgColor UI uni type button size

1.前言

  • 个人封装的一系列简单易用的UI组件

2.按钮

  • 支持大小中三种尺寸,支持主题色全局配置,支持常见的状态色
<template>
	<view :class="['zll-button-wrap', size, disabled? 'disabled':'',type=='text'?'text-btn':'']" :style="btnStyle" @click="onClick">
		<slot></slot>
	</view>
</template>

<script>
	export default{
		mixins: [componentMixins],
		props: {
			size: {
				type: String,
				default: "",//默认空 small mini
			},
			width: {
				type: String,
				default: "100%",
			},
			type: {
				type: String,
				default: "",//默认空 info
			},
			disabled: {
				type: Boolean,
				default: false
			},
		},
        data(){
		    return {
			     baseColor: "#33cccc",//默认主题色
		    }
	    },
        created(){
		    //读取颜色
		    this.baseColor = uni.getStorageSync("baseColor") || "#33cccc"
	    },
		methods: {
			//点击事件
			onClick(){
				//如果没有禁用,则触发点击事件
				if(!this.disabled){
					this.$emit('click')
				}
			}
		},
		computed: {
			btnStyle(){
				//按钮
				if(this.type != "text"){
					var bgColor = this.baseColor
					//背景色(根据type字段)
					if(this.type == "info"){
						bgColor = "#909399"
					}else if(this.type == "warning"){
						bgColor = "#f0ad4e"
					}else if(this.type == "error"){
						bgColor = "#dd524d"
					}
					return {
						backgroundColor: bgColor,
						width: this.width
					}
				}else{
					//文本按钮
					return {
						color: this.baseColor,
						width: this.width
					}
				}
				
			}
		}
	}
</script>

<style scoped lang="scss">
	.zll-button-wrap{
		height: 48px;
		line-height: 48px;
		color: #ffffff;
		text-align: center;
		border-radius: 10rpx;
		font-size: 36rpx;
		cursor: pointer;
	}
	.zll-button-wrap.small{
		height: 40px;
		line-height: 40px;
		border-radius: 8rpx;
		font-size: 32rpx;
	}
	.zll-button-wrap.mini{
		height: 36px;
		line-height: 36px;
		border-radius: 6rpx;
		font-size: 28rpx;
	}
	.zll-button-wrap.disabled{
		opacity: 0.65;
		cursor: not-allowed;
	}
	.zll-button-wrap.text-btn{
		display: inline-block;
		text-decoration: underline;
		height: 40rpx;
		line-height: 40rpx;
		font-size: 28rpx;
	}
</style>

标签:zll,app,height,bgColor,UI,uni,type,button,size
From: https://www.cnblogs.com/OrochiZ-/p/18590221

相关文章

  • 一键学懂BurpSuite(1)
    声明!学习视频来自B站up主泷羽sec有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页B站泷......
  • WhatsApp营销怎么做?外贸、跨境电商人群必备从业技能!
    01什么是WhatsApp营销?通过WhatsApp来营销,是外贸人群、跨境电商人群的必备技能之一。一般来说,指的是企业通过WhatsApp主动向客户发起对话,对话内容通常是产品的宣传、促销和优惠等。因为WhatsApp支持多种信息类型,所以企业可以针对不同客户,进行个性化沟通。不过,需要我们注意的......
  • uniapp h5 和 小程序互相传值
    小程序端<template><div><web-view:webview-styles="webviewStyles":src="webViewUrl"@message="getMessage"></web-view></div></template><script>exportdefault{......
  • Centos上安装配置Nginx服务,并把全部文件放入/usr/My-Application文件夹中
    #创建安装目录sudomkdir-p/usr/My-Applicationcd/usr/My-Application#下载Nginx源码包wgethttp://nginx.org/download/nginx-1.24.0.tar.gz#解压源码包tar-zxvfnginx-1.24.0.tar.gzcdnginx-1.24.0#安装编译工具和依赖库sudoyuminstall-ygccgcc-c......
  • 解决mapper重名问题
    问题公司有一个集成开发平台,导入数据库表会自动生成实体类、mapper和xml等文件,这是一件很方便的事,可以省去很多没有技术性的重复工作。但是最近我在使用这个平台的时候遇到了一个问题,那就是mapper冲突问题。当老表进行导入的时候,会生成与之前项目中已有mapper一样的名字,比如原项......
  • 高颜值 UI!!国产 Redis 可视化工具,牛逼!
    日常开发过程中,项目常常都会使用Redis来做缓存或者Session服务器,为了更直观方便,开发者常常会使用一些可视化工具,如RedisDesktopManager、RedisClent等,但界面UI做得不尽人意,作为当今时代,对软件的UI还是有所期待的,今天给大家分享一款,高颜值、功能强大的Redis客户端工具。-......
  • 【Unity 科幻角色资产包】SCI FI CHARACTERS MEGA PACK Vol 1 大量高质量的科幻风格角
    SCIFICHARACTERSMEGAPACKVol1是一款专为Unity开发者设计的角色资产包,提供了大量高质量的科幻风格角色模型、纹理、动画和预设,旨在帮助开发者快速构建具有未来感的游戏角色,特别适合科幻、未来城市、太空战斗等类型的游戏。该插件包含了多种不同的角色和配件,可以用于创......
  • java操作http请求针对不同提交方式(application/json和application/x-www-form-urlenc
    @目录摘要举例三种请求:依赖第一种:http的GET请求(application/json)第二种:http的POST请求(application/json)第三种:http的POST请求(application/x-www-form-urlencoded)摘要举例三种请求:http的GET请求(application/json)http的POST请求(application/json)http的POST请求(application/x......
  • 不会单元测试不是一个好测试:Junit框架详解
    你是否曾遇到这样的场景:开发上线后,Bug层出不穷,而测试却无从下手?在这个快速迭代的时代,不懂单元测试的测试人员,如何确保项目稳定性?单元测试是如何在代码开发初期,就为软件质量保驾护航的?Junit框架,又能为测试工作带来哪些实质性的帮助?Junit作为Java单元测试的“黄金搭档”,因其轻......
  • Burp Suite(5)
    公众号:泷羽Sec-Ceo声明!        学习视频来自B站up主**泷羽sec**有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的......