加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vue mint-ui 实现省市区街道4级联动示例(仿淘宝京东收货地址4级

发布时间:2020-12-17 02:46:08 所属栏目:百科 来源:网络整理
导读:本文介绍了vue mint-ui 实现省市区街道4级联动示例(仿淘宝京东收货地址4级联动) 先去下载一个“省份、城市、区县、乡镇” 四级联动数据,然后 引入 Vue.component(Picker.name,Picker); 组件使用 mt-picker :slots="streetSlots" ref="picker" class="picker

本文介绍了vue mint-ui 实现省市区街道4级联动示例(仿淘宝京东收货地址4级联动)

先去下载一个“省份、城市、区县、乡镇” 四级联动数据,然后

引入

Vue.component(Picker.name,Picker);

组件使用

<mt-picker :slots="streetSlots" ref="picker" class="picker" @change="onStreetChange" :visible-item-count="5" >
上门服务地址:{{ addressProvince }} {{ addressCity }}

组件方法

import s from '../../statics/mobile/json/address4.json'

export default {
name: 'address',data () {
return {
companyName:'',addressSlots: [
{
flex: 1,defaultIndex: 1,values: Object.keys(s),className: 'slot1',textAlign: 'center'
},{
divider: true,content: '-',className: 'slot2'
},{
flex: 1,values: [],className: 'slot3',className: 'slot4'
},className: 'slot5',textAlign: 'center'
}
],streetSlots: [
{
flex: 1,addressProvince: '省',addressCity: '市',addressXian: '区',addressStreet: '街道',}
},methods: {

onAddressChange(picker,values) {
let sheng = Object.keys(s);
let shi = Object.keys(s[values[0]]);

      let index=shi.indexOf(values[1])
      let xian = s[values[0]][shi[index]];
     this.xianObj = xian;
picker.setSlotValues(1,shi);
this.addressProvince = values[0];
this.addressCity = values[1];
this.addressXian = values[2];
picker.setSlotValues(2,Object.keys(xian));
},onStreetChange(picker,values){
this.addressStreet = values[0]
},},watch: {
'addressXian': {
handler(val,oval){
let street = this.xianObj[this.addressXian]
this.streetSlots[0].values = street
}
}
},created(){

},mounted(){
this.$nextTick(() => {
setTimeout(() => {//这个是一个初始化默认值的一个技巧
this.addressSlots[0].defaultIndex = 0;
},100);
});

}
}

完成效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读