import{o as s,a as d,y as a}from"./vue-libs.b44bc779.js";const e={class:"van-doc-markdown-body"},n=a(`

AddressList

Intro

Display a list of receiving addresses.

Install

Register component globally via app.use, refer to Component Registration for more registration ways.

import { createApp } from 'vue';
import { AddressList } from 'vant';

const app = createApp();
app.use(AddressList);

Usage

Basic Usage

<van-address-list
  v-model="chosenAddressId"
  :list="list"
  :disabled-list="disabledList"
  disabled-text="The following address is out of range"
  default-tag-text="Default"
  @add="onAdd"
  @edit="onEdit"
/>
import { ref } from 'vue';
import { Toast } from 'vant';

export default {
  setup() {
    const chosenAddressId = ref('1');
    const list = [
      {
        id: '1',
        name: 'John Snow',
        tel: '13000000000',
        address: 'Somewhere',
        isDefault: true,
      },
      {
        id: '2',
        name: 'Ned Stark',
        tel: '1310000000',
        address: 'Somewhere',
      },
    ];
    const disabledList = [
      {
        id: '3',
        name: 'Tywin',
        tel: '1320000000',
        address: 'Somewhere',
      },
    ];

    const onAdd = () => Toast('Add');
    const onEdit = (item, index) => Toast('Edit:' + index);

    return {
      list,
      onAdd,
      onEdit,
      disabledList,
      chosenAddressId,
    };
  },
};

API

Props

AttributeDescriptionTypeDefault
v-modelId of chosen addressstring-
listAddress listAddress[][]
disabled-listDisabled address listAddress[][]
disabled-textDisabled textstring-
switchableWhether to allow switch addressbooleantrue
add-button-textAdd button textstringAdd new address
default-tag-textDefault tag textstring-

Events

EventDescriptionArguments
addEmitted when the add button is clicked-
editEmitted when the edit icon of address is clickeditem: Address, index: number
selectEmitted when an address is selecteditem: Address, index: number
edit-disabledEmitted when the edit icon of disabled address is clickeditem: Address, index: number
select-disabledEmitted when a disabled address is selecteditem: Address, index: number
click-itemEmitted when an address item is clickeditem: Address, index: number

Data Structure of Address

KeyDescriptionType
idIdnumber | string
nameNamestring
telPhonenumber | string
addressAddressstring
isDefaultIs default addressboolean

Slots

NameDescriptionSlotProps
defaultCustom content after list-
topCustom content before list-
item-bottomCustom content after list itemitem: Address
tag v3.0.9Custom tag of list itemitem: Address

Types

The component exports the following type definitions:

import type { AddressListProps, AddressListAddress } from 'vant';

Theming

CSS Variables

The component provides the following CSS variables, which can be used to customize styles. Please refer to ConfigProvider component.

NameDefault ValueDescription
--van-address-list-paddingvar(--van-padding-sm) var(--van-padding-sm) 80px-
--van-address-list-disabled-text-colorvar(--van-text-color-2)-
--van-address-list-disabled-text-paddingvar(--van-padding-base) * 5 0 var(--van-padding-md)-
--van-address-list-disabled-text-font-sizevar(--van-font-size-md)-
--van-address-list-disabled-text-line-heightvar(--van-line-height-md)-
--van-address-list-add-button-z-index999-
--van-address-list-item-paddingvar(--van-padding-sm)-
--van-address-list-item-text-colorvar(--van-text-color)-
--van-address-list-item-disabled-text-colorvar(--van-text-color-3)-
--van-address-list-item-font-size13px-
--van-address-list-item-line-heightvar(--van-line-height-sm)-
--van-address-list-item-radio-icon-colorvar(--van-danger-color)-
--van-address-list-edit-icon-size20px-
`,13),l=[n],h={__name:"README",setup(r,{expose:t}){return t({frontmatter:{}}),(p,o)=>(s(),d("div",e,l))}};export{h as default};