zoukankan      html  css  js  c++  java
  • vue+vant实现省市联动(van-area)组件(包含比较全面的全国省市数组数据)

    组件库太香了,人家nb,自己写的都是**

    效果:

    1.安装vant库以及main.js的配置

    2.一般结合van-popup组件

    </template>
    <van-popup 
        v-model="showArea" 
        position="bottom" 
        :style="{ height: '39%' }">
           <van-area 
           :area-list="areaList
           :columns-num="2" title="请选择" 
            @change="areaChange"
            @confirm="areaConfirm"
            @cancel="areaCancle"/>
        </van-popup>
    </template>
    3.vant只给了几个案例,这里引入一个address.js的文件名(内容在文章末尾)
    import areaList from '../assets/js/areaList'
    export default {
        name: "loginOut",
        components:{
        },
        data(){
      list:[{tit:'头像',msg:'更改头像'},{tit:'性别',msg:'保密'},{tit:'个性签名',msg:'补充完整'},{tit:'城市',msg:'请选择'},{tit:'修改用户名',msg:'棋云'},{tit:'账号安全',msg:''}],
           showArea:false,
           areaList,
           areaName:''
          },
    methods:{
       
    //省市二级联动
            areaChange (picker, value, index){
                let areaName = ''
                for (var i = 0; i < value.length; i++) {
                    areaName = areaName + value[i].name + ' '
                  }
                  this.list[3].msg=areaName
                  },
            areaConfirm(values){
                //values的值即为用户选中的省市对象,之后可向后端数据交互
                console.log(values)
                this.showArea = false;
            },
            areaCancle(){
                this.showArea = false;
                this.list[3].msg='请选择'
            }
     
        }
    }
    4.在刚取名为areaList.js的文件里的内容vant官方已给出https://github.com/youzan/vant/blob/dev/src/area/demo/area.js
  • 相关阅读:
    这是一棵树吗
    感染者
    es6 语法
    css3 flex 详解,可以实现div内容水平垂直居中
    移动端实现复制内容至剪贴板小例子
    jq+mui 阻止事件冒泡
    移动端H5 判断IOS还是Android 平台
    移动端布局 rem,和px
    关于H5移动端开发 iPhone X适配
    H5 微信公众号 监听返回事件
  • 原文地址:https://www.cnblogs.com/wd163/p/12436012.html
Copyright © 2011-2022 走看看