使用方式
在 script
中引用组件
import simpleAddress from "@/components/simple-address/simple-address.nvue"
export default {
components: {
simpleAddress
},
data() {
return {
cityPickerValueDefault: [0, 0, 0],
pickerText: '',
form: {
province_id: '',
area_id: '',
city_id: '',
}
}
},
methods: {
// 弹出选择地区
openAddres() {
this.$refs.simpleAddress.open();
},
// 选择完得到省市区的 id
onConfirm(e) {
this.pickerText = e.label
this.form.province_id = e.provinceCode
this.form.city_id = e.cityCode
// e.provinceCode
// e.cityCode
// console.log(e.areaCode)
const vReg = /^1[1-2]/
if(vReg.test(e.areaCode)) {
let strArr = e.areaCode.split('')
strArr.splice(3,1,'2')
let str = strArr.join('');
this.form.area_id = str
} else {
this.form.area_id = e.areaCode
}
},
}
}
在 template
中使用组件
<view class="qui-cell" @tap="openAddres">
<view class="text-default fw600 w180">地区</view>
<view class="cell-bd flex">
{{pickerText}}
</view>
<view class="arrow-r"></view>
</view>
<!--这个放那里都行, 一般放在底部-->
<simple-address ref="simpleAddress" :pickerValueDefault="cityPickerValueDefault"
@onConfirm="onConfirm" themeColor='#007AFF'></simple-address>