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 相关文章推荐
javascript 面向对象继承
Nov 26 Javascript
window.js 主要包含了页面的一些操作
Dec 23 Javascript
利用浏览器全屏api实现js全屏
Jan 16 Javascript
jquery计算鼠标和指定元素之间距离的方法
Jun 26 Javascript
JavaScript中innerHTML,innerText,outerHTML的用法及区别
Sep 01 Javascript
酷炫jQuery全屏3D焦点图动画效果
Mar 22 Javascript
利用Javascript仿Excel的数据透视分析功能
Sep 07 Javascript
node.js-v6新版安装具体步骤(分享)
Sep 06 Javascript
Vue-Access-Control 前端用户权限控制解决方案
Dec 01 Javascript
微信小程序之左右布局的实现代码
Dec 13 Javascript
JS如何生成随机验证码
Mar 02 Javascript
原生JS实现微信通讯录
Jun 18 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
PHP4在WinXP下IIS和Apache2服务器上的安装实例
2006/10/09 PHP
测试php函数的方法
2013/11/13 PHP
PHP统计当前在线用户数实例讲解
2015/10/21 PHP
详解php中serialize()和unserialize()函数
2017/07/08 PHP
新浪刚打开页面出来的全屏广告代码
2007/04/02 Javascript
20个最新的jQuery插件
2012/01/13 Javascript
深入理解JavaScript系列(7) S.O.L.I.D五大原则之开闭原则OCP
2012/01/15 Javascript
ajax中get和post的说明及使用与区别
2012/12/23 Javascript
JS中完美兼容各大浏览器的scrolltop方法
2015/04/17 Javascript
jquery左右全屏大尺寸多图滑动效果代码分享
2015/08/28 Javascript
喜大普奔!jQuery发布 3.0 最终版
2016/06/12 Javascript
微信小程序 wxapp导航 navigator详解
2016/10/31 Javascript
webpack2.0配置postcss-loader的方法
2017/08/17 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
ReactNative实现Toast的示例
2017/12/31 Javascript
JS实现点击下拉菜单把选择的内容同步到input输入框内的实例
2018/01/23 Javascript
使用typescript开发angular模块并发布npm包
2018/04/19 Javascript
js实现类似iphone的网页滑屏解锁功能示例【附源码下载】
2019/06/10 Javascript
利用JS响应式修改vue实现页面的input值
2019/09/02 Javascript
bootstrap实现tab选项卡切换
2020/08/09 Javascript
[00:37]2016完美“圣”典风云人物:rOtk宣传片
2016/12/09 DOTA
浅析python 内置字符串处理函数的使用方法
2014/06/11 Python
python杀死一个线程的方法
2015/09/06 Python
Python中用post、get方式提交数据的方法示例
2017/09/22 Python
python画一个玫瑰和一个爱心
2020/08/18 Python
django实现日志按日期分割
2020/05/21 Python
英国户外装备商店:Ultimate Outdoors
2019/05/07 全球购物
公司承诺书格式
2014/05/21 职场文书
公司授权委托书格式样本
2014/10/01 职场文书
庆祝儿童节标语
2014/10/09 职场文书
贫困证明书格式及范文
2014/10/15 职场文书
2014年酒店年度工作总结
2014/12/10 职场文书
2015年清明节网上祭英烈留言寄语
2015/03/04 职场文书
催款律师函范文
2015/05/27 职场文书
保护环境建议书作文500字
2015/09/14 职场文书
mysql部分操作
2021/04/05 MySQL