feat: 商品提交列表
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
<template>
|
||||
<main class="address-page">
|
||||
<van-nav-bar title="地址管理" left-arrow @click-left="$router.back()" />
|
||||
<van-address-list
|
||||
v-model="chosenAddressId"
|
||||
:list="addressList"
|
||||
:disabled-list="disabledList"
|
||||
disabled-text="以下地址超出配送范围"
|
||||
default-tag-text="默认"
|
||||
@add="onAdd"
|
||||
@edit="onEdit"
|
||||
@select="onSelect"
|
||||
/>
|
||||
</main>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { formatAddress, readAddresses, readChosenAddressId, saveChosenAddressId } from './address-data'
|
||||
|
||||
export default {
|
||||
name: 'JoyfulSelectionAddressList',
|
||||
data: () => ({
|
||||
chosenAddressId: '',
|
||||
addresses: [],
|
||||
disabledList: []
|
||||
}),
|
||||
computed: {
|
||||
addressList() {
|
||||
return this.addresses.map(item => ({
|
||||
id: item.id,
|
||||
name: item.name,
|
||||
tel: item.tel,
|
||||
address: formatAddress(item),
|
||||
isDefault: item.isDefault
|
||||
}))
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.addresses = readAddresses()
|
||||
this.chosenAddressId = readChosenAddressId()
|
||||
},
|
||||
methods: {
|
||||
onSelect(item) {
|
||||
this.chosenAddressId = item.id
|
||||
saveChosenAddressId(item.id)
|
||||
|
||||
if (this.$route.query.from === 'checkout') {
|
||||
this.$router.back()
|
||||
}
|
||||
},
|
||||
onAdd() {
|
||||
this.$router.push('/joyful-selection/address/edit')
|
||||
},
|
||||
onEdit(item) {
|
||||
this.$router.push({ path: '/joyful-selection/address/edit', query: { id: item.id } })
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped lang="less">
|
||||
.address-page {
|
||||
min-height: 100vh;
|
||||
padding-top: 46px;
|
||||
background: #f7f7f7;
|
||||
}
|
||||
|
||||
.address-page ::v-deep .van-nav-bar {
|
||||
position: fixed;
|
||||
z-index: 20;
|
||||
top: 0;
|
||||
right: 0;
|
||||
left: 0;
|
||||
box-shadow: 0 1px 0 rgba(0, 0, 0, .04);
|
||||
}
|
||||
|
||||
.address-page ::v-deep .van-address-list {
|
||||
padding: 12px 12px 86px;
|
||||
}
|
||||
|
||||
.address-page ::v-deep .van-address-item {
|
||||
border-radius: 8px;
|
||||
}
|
||||
|
||||
.address-page ::v-deep .van-address-item .van-radio__icon--checked .van-icon,
|
||||
.address-page ::v-deep .van-address-list__add {
|
||||
border-color: #ff5b20;
|
||||
background: #ff5b20;
|
||||
}
|
||||
|
||||
.address-page ::v-deep .van-tag--danger {
|
||||
background: #ff5b20;
|
||||
}
|
||||
</style>
|
||||
Reference in New Issue
Block a user