feat:修改地址选中

This commit is contained in:
2026-07-16 17:48:44 +08:00
parent aa2f1009e8
commit 96dfd68553
2 changed files with 186 additions and 176 deletions
+19 -11
View File
@@ -1,10 +1,5 @@
<template>
<up-popup
:show="show"
:round="24"
:closeOnClickOverlay="false"
mode="bottom"
>
<up-popup :show="show" :round="24" :closeOnClickOverlay="false" mode="bottom">
<view class="address-popup-view">
<view class="head-view">
<text class="text-32 text-zu1 text-bold">{{ headText }}</text>
@@ -13,9 +8,12 @@
</view>
<scroll-view :scroll-x="true" class="address-select-view">
<view class="address-select-view-scroll">
<view class="select-box" @click="onSelectItrm(item,index)" v-for="(item,index) in selectList" :key="index">
<text class="text-28 text-gray" :style="{color:index == curSelect ? '#7934F6' : '#333',
'white-space':'nowrap',}">{{item.name}}</text>
<view class="select-box" @click="onSelectItrm(item, index)" v-for="(item, index) in selectList"
:key="index">
<text class="text-28 text-gray" :style="{
color: index == curSelect ? '#7934F6' : '#333',
'white-space': 'nowrap',
}">{{ item.name }}</text>
<view class="select-line" v-if="index == curSelect"></view>
</view>
</view>
@@ -24,7 +22,8 @@
<scroll-view :scroll-y="true" class="address-bottom-list" :scroll-into-view="scrollId">
<view class="address-data-view" v-for="(item, index) in dataList" :key="index" :id="item.zi">
<text class="text-32 text-gray text-bold">{{ item.zi }}</text>
<view class="address-data-data" @click="onItem(item,xItem)" v-for="(xItem,xIndex) in item.data" :key="xIndex">
<view class="address-data-data" @click="onItem(item, xItem)" v-for="(xItem, xIndex) in item.data"
:key="xIndex">
<text class="text-32 text-gray ">{{ xItem.name }}</text>
</view>
</view>
@@ -88,7 +87,8 @@
}
},
onItem(item, xItem) {
Func.debounce(()=>this.onItemOne(item,xItem));
// 传入第二个参数 150 毫秒
Func.debounce(() => this.onItemOne(item, xItem), 150);
},
onItemOne(item, xItem) {
this.$emit('itemSelect', item, xItem);
@@ -109,6 +109,7 @@
border-radius: 24rpx;
position: relative;
box-sizing: border-box;
.right-zi-view {
width: 64rpx;
max-height: 600rpx;
@@ -123,6 +124,7 @@
align-items: center;
background-color: rgba(128, 128, 128, 0.3);
}
.address-bottom-list {
width: 100%;
height: calc(100% - 88rpx - 88rpx - 32rpx);
@@ -130,6 +132,7 @@
display: flex;
flex-direction: column;
overflow-y: auto;
.address-data-view {
width: 100%;
padding: 0 32rpx;
@@ -137,6 +140,7 @@
display: flex;
flex-direction: column;
border-bottom: 1rpx solid #eee;
.address-data-data {
padding-top: 24rpx;
box-sizing: border-box;
@@ -146,6 +150,7 @@
}
}
.address-select-view {
width: 100%;
height: 88rpx;
@@ -155,6 +160,7 @@
align-items: center;
padding: 0 32rpx;
box-sizing: border-box;
.address-select-view-scroll {
width: 100%;
display: flex;
@@ -169,6 +175,7 @@
border-radius: 4rpx;
}
.select-box {
margin-right: 24rpx;
height: 56rpx;
@@ -181,6 +188,7 @@
}
}
.head-view {
width: 100vw;
height: 88rpx;
@@ -8,11 +8,12 @@
<view style="margin-left: 20rpx;">{{ item.phone }}</view>
</view>
<view class="address_item_address">
{{ item.countryName }} {{ item.provinceName }} {{ item.cityName }} {{ item.areaName }} {{ item.townshipName }} {{ item.address }}
{{ item.countryName }} {{ item.provinceName }} {{ item.cityName }} {{ item.areaName }} {{
item.townshipName }} {{ item.address }}
</view>
<view class="address_operate">
<up-checkbox :customStyle="{}" label="已默认" name="agree" usedAlone :checked="item.isDefault" shape="circle"
activeColor="#FF7C41" @change="isDefaultChange(item)">
<up-checkbox :customStyle="{}" label="已默认" name="agree" usedAlone :checked="item.isDefault"
shape="circle" activeColor="#FF7C41" @change="isDefaultChange(item)">
</up-checkbox>
<view class="operate_item">
<view class="operate_" @click="deleteAddressFun(item)">删除</view>
@@ -45,9 +46,10 @@ export default {
}
},
components: { Header },
mounted() {
onShow() {
this.getAddressList();
},
methods: {
// 添加地址
jumpAddAddress() {