1.0.2 • Published 1 month ago

@tanzhenxing/zx-address-list v1.0.2

Weekly downloads
-
License
ISC
Repository
-
Last release
1 month ago

zx-address-list 地址列表

展示地址信息列表,用于选择或管理收货地址等场景。

平台兼容性

H5App小程序

基本使用

<template>
  <zx-address-list
    v-model="chosenAddressId"
    :list="list"
    :disabled-list="disabledList"
    disabled-text="以下地址超出配送范围"
    default-tag-text="默认"
    @add="onAdd"
    @edit="onEdit"
    @select="onSelect"
  />
</template>

<script setup>
import { ref } from 'vue';

const chosenAddressId = ref('1');
const list = ref([
  {
    id: '1',
    name: '张三',
    tel: '13000000000',
    address: '浙江省杭州市西湖区文三路 138 号东方通信大厦 7 楼 501 室',
    isDefault: true,
  },
  {
    id: '2',
    name: '李四',
    tel: '13100000000',
    address: '浙江省杭州市拱墅区莫干山路 50 号',
  },
]);
const disabledList = ref([
  {
    id: '3',
    name: '王五',
    tel: '13200000000',
    address: '浙江省杭州市滨江区江南大道 15 号',
  },
]);

const onAdd = () => {
  console.log('新增地址');
};
const onEdit = (item, index) => {
  console.log('编辑地址:', item, index);
};
const onSelect = (item, index) => {
  console.log('选中地址:', item, index);
};
</script>

API

Props

参数说明类型默认值
v-model当前选中地址的 id,支持多选(类型为 ArrayString | Number | Array-
list地址列表,数据结构见 AddressItemArray<AddressItem>[]
disabled-list不可配送地址列表,数据结构见 AddressItemArray<AddressItem>[]
disabled-text不可配送提示文案String-
switchable是否允许切换地址Booleantrue
show-add-button是否显示底部按钮Booleantrue
add-button-text底部按钮文字String新增地址
default-tag-text默认地址标签文字String-
right-icon右侧图标名称或图片链接,同 zx-iconname 属性Stringedit-pen

AddressItem 数据结构

键名说明类型是否必填
id每条地址的唯一标识String | Number
name姓名String
tel手机号String | Number
address详细地址String
isDefault是否为默认地址Boolean

Events

事件名说明回调参数
add点击新增按钮时触发-
edit点击编辑按钮时触发item: AddressItem, index: Number
select切换选中的地址时触发item: AddressItem, index: Number
click-item点击任意地址时触发item: AddressItem, index: Number, event: EventObject
edit-disabled编辑不可配送的地址时触发item: AddressItem, index: Number
select-disabled选中不可配送的地址时触发item: AddressItem, index: Number

Slots

名称说明插槽作用域参数(scope
top在列表顶部插入内容-
default在列表下方插入内容-
item-bottom在列表项底部插入内容item: AddressItem, disabled: Boolean
tag自定义列表项标签内容item: AddressItem

zx-address-list-item (内部组件)

zx-address-list 依赖内部组件 zx-address-list-item 来渲染每个地址项。通常你不需要直接使用 zx-address-list-item

Props (zx-address-list-item)

参数说明类型默认值
address地址对象,数据结构见 AddressItemObject- (必填)
disabled是否禁用Booleanfalse
switchable是否允许切换(用于显示单选/复选框)Booleanfalse
single-choice是否为单选模式(switchabletrue 时生效)Booleanfalse
default-tag-text默认地址标签文字String-
right-icon右侧图标名称或图片链接Stringedit-pen
model-value(内部使用) 当前选中的值,用于判断 radio/checkbox 的选中状态String | Number | Array-

Events (zx-address-list-item)

事件名说明回调参数
edit点击编辑图标时触发-
click点击整个列表项时触发event: EventObject
selectswitchabletrue 时点击触发-

Slots (zx-address-list-item)

名称说明插槽作用域参数(scope
tag自定义列表项标签内容item: AddressItem
bottom在列表项底部插入内容item: AddressItem, disabled: Boolean