AddressEdit 地址编辑

引入

  1. import{AddressEdit}from'vant';
  2. Vue.use(AddressEdit);

代码演示

基础用法

  1. <van-address-edit
  2. :area-list="areaList"
  3. show-postal
  4. show-delete
  5. show-set-default
  6. show-search-result
  7. :search-result="searchResult"
  8. @save="onSave"
  9. @delete="onDelete"
  10. @change-detail="onChangeDetail"
  11. />
  1. exportdefault{
  2. data(){
  3. return{
  4. areaList,
  5. searchResult:[]
  6. }
  7. },
  8. methods:{
  9. onSave(){
  10. Toast('save');
  11. },
  12. onDelete(){
  13. Toast('delete');
  14. },
  15. onChangeDetail(val){
  16. if(val){
  17. this.searchResult =[{
  18. name:'黄龙万科中心',
  19. address:'杭州市西湖区'
  20. }];
  21. }else{
  22. this.searchResult =[];
  23. }
  24. }
  25. }
  26. }

API

Props

参数说明类型默认值版本
area-list地区列表Object--
address-info收货人信息初始值Object{}-
search-result详细地址搜索结果Array[]-
show-postal是否显示邮政编码Booleanfalse-
show-delete是否显示删除按钮Booleanfalse1.0.0
show-set-default是否显示默认地址栏Booleanfalse-
show-search-result是否显示搜索结果Booleanfalse-
save-button-text保存按钮文字String保存-
delete-button-text删除按钮文字String删除-
is-saving是否显示保存按钮加载动画Booleanfalse-
is-deleting是否显示删除按钮加载动画Booleanfalse-
tel-validator手机号格式校验函数string => boolean--
validator自定义校验函数(key, value) => string-1.3.9

Events

事件名说明回调参数
save点击保存按钮时触发content:表单内容
focus输入框聚焦时触发key: 聚焦的输入框对应的 key
delete确认删除地址时触发content:表单内容
cancel-delete取消删除地址时触发content:表单内容
select-search选中搜索结果时触发value: 搜索结果
change-area修改收件地区时触发values: 地区信息
change-detail修改详细地址时触发value: 详细地址内容
change-default切换是否使用默认地址时触发value: 是否选中

Slots

名称说明
default在邮政编码下方插入内容

方法

通过 ref 可以获取到 address-edit 实例并调用实例方法

方法名参数返回值介绍
setAddressDetailaddressDetail: string-设置详细地址

addressInfo 数据格式

注意:addressInfo 仅作为初始值传入,表单最终内容可以在 save 事件中获取

key说明类型
id每条地址的唯一标识String | Number
name收货人姓名String
tel收货人手机号String
province省份String
city城市String
county区县String
addressDetail详细地址String
areaCode地区编码,通过省市区选择获取(必填)String
postalCode邮政编码String
isDefault是否为默认地址Boolean

searchResult 数据格式

key说明类型
name地名String
address详细地址String

省市县列表数据格式

请参考 Area 组件。

AddressEdit 地址编辑 - 图1