import { Cell, Icon, Tag } from 'vant'; import { defineComponent, computed, PropType, reactive, onMounted } from 'vue'; import styles from './address.module.less'; import iconAddress from '@common/images/icon-address.png'; import { useRouter } from 'vue-router'; export default defineComponent({ name: 'cart-address', props: { item: { type: Object as PropType, default: () => ({}) }, isLink: { type: Boolean, default: true }, setAddress: { type: Function, default: (n: any) => {} } }, setup(props) { const router = useRouter(); const addressInfo = computed(() => { return [ props.item.provinceName, props.item.cityName, props.item.regionName, props.item.detailAddress ].join(''); }); const selectAddress = () => { if (!props.isLink) return; router.push('/shopAddress'); }; return () => ( <> {props.item && props.item.phoneNumber ? ( selectAddress()} titleStyle={{ marginLeft: '0' }} v-slots={{ title: () => (
{props.item.name} {props.item && props.item.phoneNumber && props.item.phoneNumber.replace( /^(\d{3})\d{4}(\d+)/, '$1****$2' )} {props.item.defaultStatus && ( 默认 )}
), label: () => ( {addressInfo.value} ) }}>
) : ( selectAddress()} v-slots={{ icon: () => , title: () =>
去填写收货地址
}}>
)} ); } });