vue手写按钮状态组件
Posted 奥特曼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue手写按钮状态组件相关的知识,希望对你有一定的参考价值。
实现效果
用插槽来支持自定义文案
用props来传入指定的大小,风格 样式
使用组件
<XtxButton type="gray" size="mini">加入购物车</XtxButton>
<XtxButton type="plain" size="small">加入购物车</XtxButton>
<XtxButton type="primary" size="middle">加入购物车</XtxButton>
<XtxButton type="default" size="large">加入购物车</XtxButton>
按钮组件
<template>
<button class="xtx-button ellipsis" :class="[size,type]">
<slot>测试按钮</slot>
</button>
</template>
<script>
export default {
name: 'XtxButton',
props: {
size: {
type: String,
default: 'middle'
},
type: {
type: String,
default: 'default'
}
}
}
</script>
<style scoped lang="less">
// @xtxColor:#27BA9B;
.xtx-button {
appearance: none;
border: none;
outline: none;
background: #fff;
text-align: center;
border: 1px solid transparent;
border-radius: 4px;
cursor: pointer;
}
.large {
width: 240px;
height: 50px;
font-size: 16px;
}
.middle {
width: 180px;
height: 50px;
font-size: 16px;
}
.small {
width: 100px;
height: 32px;
font-size: 14px;
}
.mini {
width: 60px;
height: 32px;
font-size: 14px;
}
.default {
border-color: #e4e4e4;
color: #666;
}
.primary {
border-color: @xtxColor;
background: @xtxColor;
color: #fff;
}
.plain {
border-color: @xtxColor;
color: @xtxColor;
background: lighten(@xtxColor,50%);
}
.gray {
border-color: #ccc;
background: #ccc;;
color: #fff;
}
</style>
以上是关于vue手写按钮状态组件的主要内容,如果未能解决你的问题,请参考以下文章