随着技术的发展,开发的复杂度也越来越高,传统开发方式将一个系统做成了整块应用,经常出现的情况就是一个小小的改动或者一个小功能的增加可能会引起整体逻辑的修改,造成牵一发而动全身。通过组件化开发,可以有效实现单独开发,单独维护,而且他们之间可以随意的进行组合。大大提升开发效率低,降低维护成本。
组件化对于任何一个业务场景复杂的前端应用以及经过多次迭代之后的产品来说都是必经之路。组件化要做的不仅仅是表面上看到的模块拆分解耦,其背后还有很多工作来支撑组件化的进行,例如结合业务特性的模块拆分策略、模块间的交互方式和构建系统等等 。
本文给大家介绍的组件是:
前端自适应文字宽度下划线Tabs,自定义下划线颜色,提升页面交互体验!
效果图如下:
cc-underLineTabs
使用方法
HTML代码实现部分
<view class="content">
<view style="margin: 10px;">默认设置</view>
<!-- tabIndex:选择序列 tabs:选择数组 myColor:下划线颜色 spaceLeft:tabs间距 height:设置高度 @change:tabs切换事件 -->
<cc-underLineTabs :tabIndex="tabIndex" :tabs="tabs" @change="tabChange"></cc-underLineTabs>
<view style="margin: 10px;color: #88888;">设置下划线颜色</view>
<cc-underLineTabs :tabIndex="tabIndexTwo" myColor="red" :tabs="tabs" @change="tabChangeTwo"></cc-underLineTabs>
<view style="margin: 10px;color: #88888;">设置间距</view>
<cc-underLineTabs :tabIndex="tabIndexThree" spaceLeft="20" :tabs="tabs"
@change="tabChangeThree"></cc-underLineTabs>
<view style="margin: 10px;color: #88888;">设置行高</view>
<cc-underLineTabs :tabIndex="tabIndexfour" myColor="red" height="90" :tabs="tabs"
@change="tabChangeFour"></cc-underLineTabs>
<view style="height: 300px;background-color: antiquewhite;"></view>
</view>
export default {
data() {
return {
tabIndex: 0,
tabs: ['资讯', '体育', '视频', '直播', '凤凰卫视', '政务', '美好中国', '财经', '娱乐', '时尚', '汽车', '房产'],
tabIndexTwo: 0,
tabIndexThree: 0,
tabIndexfour: 0
}
},
methods: {
tabChange(e) {
console.log("切换tag = " + JSON.stringify(e));
this.tabIndex = e;
},
tabChangeTwo(e) {
console.log("切换tag = " + JSON.stringify(e));
this.tabIndexTwo = e;
},
tabChangeThree(e) {
console.log("切换tag = " + JSON.stringify(e));
this.tabIndexThree = e;
},
tabChangeFour(e) {
console.log("切换tag = " + JSON.stringify(e));
this.tabIndexfour = e;
}
}
}
.content {
display: flex;
flex-direction: column;
}
.logo {
height: 200rpx;
width: 200rpx;
margin-top: 200rpx;
margin-left: auto;
margin-right: auto;
margin-bottom: 50rpx;
}
.text-area {
display: flex;
justify-content: center;
}
.title {
font-size: 36rpx;
color: #8f8f94;
}
领取专属 10元无门槛券
私享最新 技术干货