address.wxml
<view>
<view wx:if='{{addressInfo}}'>
<view>
<view>{{addressInfo.name}}</view>
<view>{{addressInfo.mobile}}</view>
<view>{{addressInfo.totalDetail}}</view>
</view>
</view>
<view wx:else bindtap='editAddress'>添加地址</view>
</view>
address.js
// pages/address/address.js
import {Address} from '../../utils/address.js'
var address = new Address()
Page({
/**
* 页面的初始数据
*/
data: {
},
//点击添加地址
editAddress:function(e){
var that=this
//小程序自带收货地址
wx.chooseAddress({
success:function(res){
console.log(res)
//定义地址信息
var addressInfo={
name: res.userName,
mobile:res.telNumber,
totalDetail: address.setAddressInfo(res)
}
//setData一下地址
that._bindAddressInfo(addressInfo)
}
})
},
//绑定地址信息
_bindAddressInfo: function (addressInfo){
this.setData({
addressInfo:addressInfo
})
}
})
封装的address.js
import { Base } from 'base.js';
import { Config } from 'config.js';
class Address extends Base {
constructor() {
super()
}
//设置收货地址
setAddressInfo(res){
var province=res.provinceName || res.province,
city=res.cityName || res.city,
country=res.countryName || res.country,
detail=res.detailInfo || res.detail
var totalDetail=city+country+detail
//如果直辖市不存在的话,地址就加上省province
if (!this.isCenterCity(province)){
totalDetail=province+totalDetail
}
return totalDetail
}
// 判断是否是直辖市
isCenterCity(name){
var centerCitys=['北京市','天津市','上海市','重庆市'],
flag=centerCitys.indexOf(name)>=0;
return flag
}
}
export { Address }
![](http://10.phplike.com/1.jpg)