Files
frontend-app/pages/mine_package/mine_address/mine_address.vue
T

157 lines
3.7 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<view class="mine_address_warp">
<Header :leftTitle="$t('address.title')" left-path-type="switchTab" left-path="/pages/mine/mine" />
<view v-for="item in addressList" :key="item.id" class="address_item"
v-if="addressList && addressList.length !== 0">
<view class="address_item_info">
<view>{{ item.name }}</view>
<view style="margin-left: 20rpx;">{{ item.phone }}</view>
</view>
<view class="address_item_address">
{{ item.countryName }} {{ item.provinceName }} {{ item.cityName }} {{ item.areaName }} {{ 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>
<view class="operate_item">
<view class="operate_" @click="deleteAddressFun(item)">删除</view>
<view class="operate_" @click="updateAddress(item)">修改</view>
</view>
</view>
</view>
<view v-else class="not_order_warp">
<view class="not_order_warp_img"><up-image src="/static/common/not_search.png" width="100" height="100"
bgColor="#f1f6ff00"></up-image></view>
<view class="not_order_msg_warp">暂无地址,快去添加吧~</view>
</view>
<view class="add_but" @click="jumpAddAddress">
新增地址
</view>
</view>
</template>
<script>
import { getAddress, setAddressDefault, deleteAddress } from '@/api/address.js';
import Header from '@/components/header.vue';
export default {
data() {
return {
addressList: [],
options: [
{ text: '删除' }
]
}
},
components: { Header },
mounted() {
this.getAddressList();
},
methods: {
// 添加地址
jumpAddAddress() {
uni.navigateTo({
url: '/pages/mine_package/mine_address_add/mine_address_add',
})
},
// 查询地址
async getAddressList() {
const res = await getAddress();
if (res && res.bizcode === 100) {
this.addressList = res.data;
}
},
// 设为默认地址
async isDefaultChange(item) {
const params = {
id: item.id,
}
const res = await setAddressDefault(params);
if (res && res.bizcode === 100) {
this.getAddressList();
}
},
// 删除地址
deleteAddressFun(item) {
const then = this;
uni.showModal({
title: '提示',
content: '是否要删除该地址?',
success: function (res) {
if (res.confirm) {
then.deleteAddress(item);
}
}
});
},
// 删除的方法
async deleteAddress(item) {
const params = {
id: item.id,
}
const respon = await deleteAddress(params);
if (respon && respon.bizcode === 100) {
this.getAddressList();
}
},
// 修改地址
updateAddress(item) {
uni.navigateTo({
url: '/pages/mine_package/mine_address_add/mine_address_add?id=' + item.id,
})
},
}
}
</script>
<style lang="scss" scoped>
.mine_address_warp {
height: calc(100vh - 188rpx);
overflow-y: auto;
background-color: $app-bj;
padding: 30rpx;
}
.address_item {
background: #FFFFFF;
border-radius: 24rpx;
padding: 30rpx;
margin-bottom: 30rpx;
}
.address_item_info {
font-weight: bold;
font-size: 32rpx;
color: #222222;
display: flex;
}
.address_item_address {
font-weight: 500;
font-size: 26rpx;
color: #666666;
margin-top: 10rpx;
}
.address_operate {
display: flex;
justify-content: space-between;
margin-top: 30rpx;
}
.operate_item {
display: flex;
align-items: center;
}
.operate_ {
padding: 10rpx 30rpx;
background: #F3F3F3;
border-radius: 25rpx;
font-size: 24rpx;
color: #222222;
margin-left: 20rpx;
}
</style>