1.頁面結構 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body> </html> 編碼:charset=“gbk” ;gbk2312,utf-8 2.常見標簽 2.1 ...
隨著技術的發展,開發的複雜度也越來越高,傳統開發方式將一個系統做成了整塊應用,經常出現的情況就是一個小小的改動或者一個小功能的增加可能會引起整體邏輯的修改,造成牽一發而動全身。
通過組件化開發,可以有效實現單獨開發,單獨維護,而且他們之間可以隨意的進行組合。大大提升開發效率低,降低維護成本。 組件化對於任何一個業務場景複雜的前端應用以及經過多次迭代之後的產品來說都是必經之路。組件化要做的不僅僅是錶面上看到的模塊拆分解耦,其背後還有很多工作來支撐組件化的進行,例如結合業務特性的模塊拆分策略、模塊間的交互方式和構建系統等等
今天給大家介紹的一款組件仿美團地址管理組件列表組件 可用於電商平臺收穫地址管理;附源碼下載地址 : https://ext.dcloud.net.cn/plugin?id=13499
效果圖如下:
cc-addressSet
使用方法
<!-- color:主題色 addressList:地址管理數據 @chooseClick:選擇事件 @editClick:編輯事件 -->
<cc-addressSet :colors="colors" :addressList="addressList" @chooseClick="chooseClick"
@editClick="editClick"></cc-addressSet>
<!-- 設置數據 -->
colors: '#fbbd08',
addressList: [{
name: '小明',
phone: '12345678915',
address: '佛山市南海區',
moreAddres: '桂城街道',
isdefult: 1,
id: 1
}, {
name: '小紅',
phone: '12345678915',
address: '廣州市海珠區',
moreAddres: '昌崗路15號',
isdefult: 0,
id: 2
}],
HTML代碼實現部分
<template>
<view>
<!-- color:主題色 addressList:地址管理數據 @chooseClick:選擇事件 @editClick:編輯事件 -->
<cc-addressSet :colors="colors" :addressList="addressList" @chooseClick="chooseClick"
@editClick="editClick"></cc-addressSet>
<view class="save">
<view class="btn" :style="'background:' + colors" @tap="addAddress">添加收貨地址</view>
</view>
</view>
</template>
<script>
export default {
data() {
return {
colors: '#fbbd08',
addressList: [{
name: '小明',
phone: '12345678915',
address: '佛山市南海區',
moreAddres: '桂城街道',
isdefult: 1,
id: 1
}, {
name: '小紅',
phone: '12345678915',
address: '廣州市海珠區',
moreAddres: '昌崗路15號',
isdefult: 0,
id: 2
}],
};
},
props: {},
/**
* 生命周期函數--監聽頁面載入
*/
onLoad: function(options) {
},
methods: {
// 編輯地址
editClick(item) {
uni.showModal({
title: '點擊編輯條目',
content: '點擊編輯條目' + JSON.stringify(item)
})
},
chooseClick(item){
uni.showModal({
title: '點擊選擇條目',
content: '點擊選擇條目' + JSON.stringify(item)
})
},
// 增加地址
addAddress() {
},
}
};
</script>
<style lang="scss" scoped>
.save {
position: fixed;
bottom: 0;
width: 100%;
height: 120upx;
display: flex;
justify-content: center;
align-items: center;
}
.save view {
display: flex;
}
.save .btn {
box-shadow: 0upx 5upx 10upx rgba(0, 0, 0, 0.4);
width: 70%;
height: 80upx;
border-radius: 80upx;
background-color: #f23a3a;
color: #fff;
justify-content: center;
align-items: center;
font-size: 30upx;
margin-bottom: 60px;
}
</style>