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


Posted in Javascript onOctober 16, 2017

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

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

引入

import { Picker } from 'mint-ui'; //前提是npm install mint-ui -S

Vue.component(Picker.name, Picker);

组件使用

<mt-picker :slots="addressSlots" class="picker" @change="onAddressChange" :visible-item-count="5" ></mt-picker >

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

组件方法

<script type="text/ecmascript-6" >
 
 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',
      textAlign: 'center'
     }, {
      divider: true,
      content: '-',
      className: 'slot4'
     }, {
      flex: 1,
      values: [],
      className: 'slot5',
      textAlign: 'center'
     }
    ],
    streetSlots: [
     {
      flex: 1,
      values: [],
      className: 'slot1',
      textAlign: 'center'
     }
    ],
    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);
   });



  }
 }
</script >

完成效果

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery弹出层插件简化版代码下载
Oct 16 Javascript
Extjs学习笔记之三 extjs form更多的表单项
Jan 07 Javascript
Javascript变量函数浅析
Sep 02 Javascript
JavaScript数据库TaffyDB用法实例分析
Jul 27 Javascript
JS+CSS实现闪烁字体效果代码
Apr 05 Javascript
ionic隐藏tabs的方法
Aug 29 Javascript
jQuery实现邮箱下拉列表自动补全功能
Sep 08 Javascript
uploader秒传图片到服务器完整代码
Apr 22 Javascript
Vue.js递归组件构建树形菜单
Dec 24 Javascript
js回文数的4种判断方法示例
Jun 04 Javascript
vue 实现根据data中的属性值来设置不同的样式
Aug 04 Javascript
JS实现鼠标移动拖尾
Dec 27 Javascript
jquery一键控制checkbox全选、反选或全不选
Oct 16 #jQuery
Vue2.0父子组件传递函数的教程详解
Oct 16 #Javascript
使用clipboard.js实现复制功能的示例代码
Oct 16 #Javascript
requireJS模块化实现返回顶部功能的方法详解
Oct 16 #Javascript
JavaScript简单实现合并两个Json对象的方法示例
Oct 16 #Javascript
seajs实现强制刷新本地缓存的方法分析
Oct 16 #Javascript
基于ajax和jsonp的原生封装(实例)
Oct 16 #Javascript
You might like
是否存在第一台收音机的说法
2021/03/01 无线电
中国广播史趣谈 — 几个历史第一次
2021/03/01 无线电
奇怪的PHP引用效率问题分析
2012/03/23 PHP
PHP面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
PHP获取数组中重复最多的元素的实现方法
2014/11/11 PHP
详解PHP数组赋值方法
2015/11/07 PHP
Yii2实现上下联动下拉框功能的方法
2016/08/10 PHP
javascript实现促销倒计时+fixed固定在底部
2013/09/18 Javascript
用js判断输入是否为中文的函数
2014/03/10 Javascript
判断一个对象是否为jquery对象的方法
2014/03/12 Javascript
javascript弹出页面回传值的方法
2015/01/28 Javascript
javascript实现根据iphone屏幕方向调用不同样式表的方法
2015/07/13 Javascript
jQuery简单操作cookie的插件实例
2016/01/13 Javascript
简单讲解jQuery中的子元素过滤选择器
2016/04/18 Javascript
Javascript之String对象详解
2016/06/08 Javascript
javascript中数组和字符串的方法对比
2016/07/20 Javascript
获取select的value、text值的简单示例(jquery与javascript)
2016/12/07 Javascript
vue实现全选、反选功能
2020/11/17 Javascript
vuejs项目打包之后的首屏加载优化及打包之后出现的问题
2018/04/01 Javascript
vue.js与element-ui实现菜单树形结构的解决方法
2018/04/21 Javascript
es6新特性之 class 基本用法解析
2018/05/05 Javascript
JavaScript对象原型链原理详解
2020/02/05 Javascript
[01:03:42]VP vs VGJ.S 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[02:47]2018年度DOTA2最佳辅助位选手4号位-完美盛典
2018/12/17 DOTA
理解python正则表达式
2016/01/15 Python
python getopt详解及简单实例
2016/12/30 Python
python使用pil库实现图片合成实例代码
2018/01/20 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
2019/08/21 Python
python中字典按键或键值排序的实现代码
2019/08/27 Python
python 基于opencv 绘制图像轮廓
2020/12/11 Python
CSS3制作精致的照片墙特效
2016/06/07 HTML / CSS
销售代表求职自荐信
2013/10/01 职场文书
2015年元旦联欢晚会活动总结
2014/11/28 职场文书
2015年八一建军节活动总结
2015/03/20 职场文书
2015年计划生育责任书
2015/05/08 职场文书