快速实现一个微信小程序的Button组件

阅读 37007  ·  发布日期 2020-08-24 17:26  ·  温州优光网络科技有限公司|建站|APP小程序制作|做网站SEO推广优化
【摘要】 微信小程序存在Button组件微信小程序原生存在Button组件,而且样式也不丑,拓展属性也很多,只要去看文档,一边看一边试,还是很容易构造一个理想的按钮Button出来。微信小程序Button传送门。但是某些时候可能也会觉得原生Button组件配置过于复杂,或者并不满足当前需求,那么就可能需要自定义一个Button组... 【温州小程序开发,温州微信公众号,平阳做网站,平阳网站建设公司,平阳小程序商城制作,昆阳万全做网站,鳌江水头小程序,萧江腾蛟微信公众号,山门顺溪南雁海西南麂凤卧麻步怀溪网络网店服务,政采云网店管理服务】...

快速实现一个微信小程序的Button组件

微信小程序存在Button组件微信小程序原生存在Button组件,而且样式也不丑,拓展属性也很多,只要去看文档,一边看一边试,还是很容易构造一个理想的按钮Button出来。
微信小程序Button传送门。
但是某些时候可能也会觉得原生Button组件配置过于复杂,或者并不满足当前需求,那么就可能需要自定义一个Button组件了。
好的,开始比如想要这样的效果。
拥有五种不同的颜色拥有三种不同的大小拥有镂空效果可以圆角可以禁用可以设置图标上代码第一步,创建组件首先打开编辑器,这里就打开微信开发者工具吧,然后创建一个组件,像这样我这里用的是Vscode然后用到了less,和easyLess插件自动编译less为wxss样式。
第二步,控制结构和样式结构中需要注意:
文字应该居中显示,所以此处可能需要使用flex布局方便些需要预留图标位置,没有设置时,则不显示需要设置背景颜色控制选项注意结构和样式对应即可.pm-button {
border-radius: 0;
font-weight: normal;
display: flex;
flex-flow: row nowrap;
justify-content: center;
align-items: center;
white-space: nowrap;
}
.pm-button:not([size='
mini'
]) {
width: 0;
}
.pm-button--normal {
width: 80px !important;
height: 40px;
font-size: 16px;
}
.pm-button--normal.pm-button--round {
border-radius: 40px;
}
.pm-button--small {
width: 60px !important;
height: 30px;
font-size: 14px;
}
.pm-button--small.pm-button--round {
border-radius: 30px;
}
.pm-button--mini {
width: 40px !important;
height: 20px;
font-size: 12px;
}
.pm-button--mini.pm-button--round {
border-radius: 20px;
}
.pm-button--primary {
background-color: #1989fa;
border: 1px solid #1989fa;
color: white;
}
.pm-button--primary.pm-button--plain {
color: #1989fa;
}
.pm-button--success {
background-color: #07c160;
border: 1px solid #07c160;
color: white;
}
.pm-button--success.pm-button--plain {
color: #07c160;
}
.pm-button--danger {
background-color: #ee0a24;
border: 1px solid #ee0a24;
color: white;
}
.pm-button--danger.pm-button--plain {
color: #ee0a24;
}
.pm-button--warning {
background-color: #ff976a;
border: 1px solid #ff976a;
color: white;
}
.pm-button--warning.pm-button--plain {
color: #ff976a;
}
.pm-button--default {
background-color: #ffffff;
border: 1px solid #ebedf0;
color: black;
}
.pm-button--primary:active, .pm-button--success:active, .pm-button--danger:active, .pm-button--warning:active, .pm-button--default:active {
opacity: 0.8;
}
.pm-button--default:active {
background-color: #ebedf0;
}
.pm-button--plain {
background-color: transparent;
}
.pm-button--plain:active {
opacity: 1!important;
background-color: #ebedf0;
}
.pm-button--disabled {
opacity: 0.6;
}
.pm-button--disabled:active {
opacity: 0.6 !important;
}
.pm-button--disabled.pm-button--plain:active, .pm-button--disabled.pm-button--default:active {
background-color: transparent;
}
第三步,逻辑处理Component({
/** * 组件的属性列表 */ properties: {
size: {
type: String, value: '
normal'
}
, type: {
type: String, value: '
primary'
}
, plain: Boolean, disabled: Boolean, round: Boolean, cStyle: String, icon: String, iconColor: String, iconSize: String }
, /** * 组件的方法列表 */ methods: {
clickHandler() {
!this.data.disabled && this.triggerEvent('
click'
, {
}
) }
}
}
)推荐教程:
《微信小程序》以上就是快速实现一个微信小程序的Button组件的详细内容,更多请关注php中文网其它相关文章!
微信
分享相关标签:
微信小程序本文转载于:
简书,如有侵犯,请联系a@php.cn删除
上一篇:
微信小程序必知必会面试题
下一篇:
微信公众号文章删除不了怎么办?相关文章相关视频微信小程序常见的开发问题汇总微信小程序自动跳出来怎么解决?微信小程序看不了广告怎么办?用mpvue开发微信小程序基础知识快速实现一个微信小程序的Button组件微信小程序事件 以及事件对象微信小程序开发工具的安装微信小程序开发工具的安装 [温州做微信公众号]