通过微信开发者工具 商城模板 创建新小程序
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
Component({
|
||||
options: {
|
||||
addGlobalClass: true,
|
||||
multipleSlots: true,
|
||||
},
|
||||
properties: {
|
||||
address: {
|
||||
type: Object,
|
||||
value: {},
|
||||
},
|
||||
customIcon: {
|
||||
type: String,
|
||||
value: 'edit-1',
|
||||
},
|
||||
extraSpace: {
|
||||
type: Boolean,
|
||||
value: true,
|
||||
},
|
||||
isDrawLine: {
|
||||
type: Boolean,
|
||||
value: true,
|
||||
},
|
||||
},
|
||||
externalClasses: [
|
||||
'item-wrapper-class',
|
||||
'title-class',
|
||||
'default-tag-class',
|
||||
'normal-tag-class',
|
||||
'address-info-class',
|
||||
'delete-class',
|
||||
],
|
||||
methods: {
|
||||
onDelete(e) {
|
||||
const { item } = e.currentTarget.dataset;
|
||||
this.triggerEvent('onDelete', item);
|
||||
},
|
||||
onSelect(e) {
|
||||
const { item } = e.currentTarget.dataset;
|
||||
this.triggerEvent('onSelect', item);
|
||||
},
|
||||
onEdit(e) {
|
||||
const { item } = e.currentTarget.dataset;
|
||||
this.triggerEvent('onEdit', item);
|
||||
},
|
||||
},
|
||||
});
|
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"component": true,
|
||||
"usingComponents": {
|
||||
"t-icon": "tdesign-miniprogram/icon/icon",
|
||||
"t-tag": "tdesign-miniprogram/tag/tag",
|
||||
"t-swipe-cell": "tdesign-miniprogram/swipe-cell/swipe-cell"
|
||||
}
|
||||
}
|
@@ -0,0 +1,30 @@
|
||||
<wxs module="phoneReg">
|
||||
var toHide = function(array) { var mphone = array.substring(0, 3) + '****' + array.substring(7); return mphone; }
|
||||
module.exports.toHide = toHide;
|
||||
</wxs>
|
||||
<view class="address-item-wrapper item-wrapper-class">
|
||||
<t-swipe-cell class="swipe-out">
|
||||
<view class="address {{isDrawLine ? 'draw-line' : ''}}" bindtap="onSelect" data-item="{{address}}">
|
||||
<view class="address-left" wx:if="{{extraSpace}}">
|
||||
<t-icon wx:if="{{address.checked}}" name="check" color="#FA4126" class-prefix="{{classPrefix}}" size="46rpx" />
|
||||
</view>
|
||||
<view class="address-content">
|
||||
<view class="title title-class">
|
||||
<text class="text-style">{{address.name}}</text>
|
||||
<text>{{phoneReg.toHide(address.phoneNumber || '')}}</text>
|
||||
</view>
|
||||
<view class="label-adds">
|
||||
<text class="adds address-info-class">
|
||||
<text wx:if="{{address.isDefault === 1}}" class="tag tag-default default-tag-class">默认</text>
|
||||
<text wx:if="{{address.tag}}" class="tag tag-primary normal-tag-class">{{address.tag}}</text>
|
||||
<text class="address-text">{{address.address}}</text>
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
<view catch:tap="onEdit" data-item="{{address}}" class="address-edit">
|
||||
<t-icon name="{{customIcon}}" class-prefix="{{classPrefix}}" size="46rpx" color="#BBBBBB" />
|
||||
</view>
|
||||
</view>
|
||||
<view slot="right" class="swipe-right-del delete-class" bindtap="onDelete" data-item="{{address}}"> 删除 </view>
|
||||
</t-swipe-cell>
|
||||
</view>
|
@@ -0,0 +1,103 @@
|
||||
.address-item-wrapper {
|
||||
overflow: hidden;
|
||||
}
|
||||
.address-item-wrapper .swipe-out .wr-swiper-cell {
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.address-item-wrapper .swipe-out .swipe-right-del {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 144rpx;
|
||||
height: 100%;
|
||||
background-color: #fa4126;
|
||||
color: #fff;
|
||||
font-size: 28rpx;
|
||||
line-height: 40rpx;
|
||||
}
|
||||
.address-item-wrapper .draw-line {
|
||||
position: relative;
|
||||
}
|
||||
.address-item-wrapper .draw-line::after {
|
||||
content: '';
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
left: 32rpx;
|
||||
width: 200%;
|
||||
height: 2rpx;
|
||||
transform: scale(0.5);
|
||||
transform-origin: 0 0;
|
||||
box-sizing: border-box;
|
||||
border-bottom: #e5e5e5 2rpx solid;
|
||||
}
|
||||
.address-item-wrapper .address {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
padding: 32rpx;
|
||||
background-color: #fff;
|
||||
}
|
||||
.address-item-wrapper .address .address-edit {
|
||||
padding: 20rpx 0 20rpx 46rpx;
|
||||
}
|
||||
.address-item-wrapper .address .address-left {
|
||||
width: 80rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
.address-item-wrapper .address .address-content {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex: 1;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .title {
|
||||
font-size: 32rpx;
|
||||
line-height: 48rpx;
|
||||
margin-bottom: 16rpx;
|
||||
color: #333333;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .title .text-style {
|
||||
margin-right: 8rpx;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
max-width: 280rpx;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .label-adds {
|
||||
display: flex;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .label-adds .adds {
|
||||
display: -webkit-box;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 2;
|
||||
color: #999999;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .label-adds .tag {
|
||||
display: inline-block;
|
||||
padding: 0rpx 8rpx;
|
||||
min-width: 40rpx;
|
||||
height: 32rpx;
|
||||
border-radius: 18rpx;
|
||||
font-size: 20rpx;
|
||||
line-height: 32rpx;
|
||||
text-align: center;
|
||||
margin-right: 8rpx;
|
||||
vertical-align: text-top;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .label-adds .tag-default {
|
||||
background: #ffece9;
|
||||
color: #fa4126;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .label-adds .tag-primary {
|
||||
background: #f0f1ff;
|
||||
color: #5a66ff;
|
||||
}
|
||||
.address-item-wrapper .address .address-content .label-adds .address-text {
|
||||
font-size: 28rpx;
|
||||
line-height: 40rpx;
|
||||
color: #999999;
|
||||
}
|
Reference in New Issue
Block a user