# Address 地址选择
## 选择自定义地址
```html
```
```javascript
```
## 选择已有地址
```html
```
```javascript
```
## 自定义图标
```html
```
```javascript
```
## 自定义地址与已有地址切换
```html
```
```javascript
```
## API
| 字段 | 说明 | 类型 | 默认值
|----- | ----- | ----- | -----
| v-model | 是否打开地址选择 | String | ''
| type | 地址选择类型 exist/custom | String | custom
| province | 省,每个省的对象中,必须有 name 字段 | Array | []
| city | 市,每个市的对象中,必须有 name 字段 | Array | []
| country | 县,每个县的对象中,必须有 name 字段 | Array | []
| town | 乡/镇,每个乡/镇的对象中,必须有 name 字段 | Array | []
| existAddress | 已存在地址列表,每个地址对象中,必传值provinceName、cityName、countyName、townName、addressDetail、selectedAddress(字段解释见下) | Array | []
| defaultIcon | 已有地址列表默认图标,type=‘exist’ 时生效 | string | ''
| selectedIcon | 已有地址列表选中图标,type=‘exist’ 时生效 | string | ''
| isShowCustomAddress | 是否可以切换自定义地址选择,type=‘exist’ 时生效 | Boolean | true
| customAddressTitle | 自定义地址选择标题,type='custom' 时生效 | string | '请选择所在地区'
| existAddressTitle| 已有地址标题 ,type=‘exist’ 时生效| string | '配送至'
* provinceName 省的名字
* cityName 市的名字
* countyName 县的名字
* townName 乡/镇的名字
* addressDetail 具体地址
* selectedAddress 字段用于判断当前地址列表的选中项。
## Event
| 字段 | 说明 | 回调参数
|----- | ----- | -----
| onChange | 自定义选择地址时,选择地区时触发 | 参考 onChange
| selected | 选择已有地址列表时触发 | 参考 selected
| close | 地址选择弹框关闭时触发 | 参考 close
## onChange 回调参数
| 参数 | 说明 | 可能值
|----- | ----- | -----
| custom | 当前点击的行政区域 | province(省) / city(市) / country(县) / town(乡)
| next | 当前点击的行政区域的下一级 | province(省) / city(市) / country(县) / town(乡)
| value | 当前点击的行政区域的值(返回传入的值) | {}
## selected 回调参数
| 参数 | 说明 | 可能值
|----- | ----- | -----
| 第一个参数(prevExistAdd) | 选择前选中的地址 | {}
| 第二个参数(nowExistAdd) | 当前选中的地址 | {}
| 第三个参数(arr) | 选择完之后的已有地址列表(selectedAddress 值发生改变) | {}
## close 回调参数
| 参数 | 说明 | 可能值
|----- | ----- | -----
| type | 地址选择类型 exist/custom | exist/custom
| data | 选择地址的值,custom 时,addressStr 为选择的地址组合 | {}
注:点击叉号或者点击遮罩层关闭地址选择,不会触发 close 事件。