VUE-地区选择器(V-Distpicker)组件使用

安装,引用,这些直接从官网拷贝来的,就不多说了。
1、安装
使用 npm 安装:

npm install v-distpicker --save
使用 yarn 安装

yarn add v-distpicker --save
2、使用

注册组件
注册全局组件

import VDistpicker from 'v-distpicker'

Vue.component('v-distpicker', VDistpicker);
注册组件

import VDistpicker from 'v-distpicker'

export default {
  components: { VDistpicker }
}
简单使用
基础

<v-distpicker></v-distpicker>
默认值

<v-distpicker province="广东省" city="广州市" area="海珠区"></v-distpicker>
移动端

<v-distpicker type="mobile"></v-distpicker>

3、下面是重点

获取选择的值

<template>
    <button  @click="choose">点我选择区域</button>
    <div class="divwrap" v-if="show">
        <v-distpicker type="mobile" @province="onChangeProvince" @city="onChangeCity" @area="onChangeArea"></v-distpicker>
    </div>
</template>

在你引用 v-distpicker 的父组件里面定义几个方法来获取选择的值。

<script>
    import VDistpicker from 'v-distpicker'
    export default {
        name: 'getAddress',
        components: { VDistpicker },
        data() {
            return {
                show:false,
            }
        },
        methods: {
            choose(){
                this.show=!this.show
            },
            onChangeProvince(a){
                console.log(a)                
            },
            onChangeCity(a){
                console.log(a)                
            },
            onChangeArea(a){
                console.log(a)    
                this.show=false
            }            
        },
}



**4、样式**
你是不是感觉弹出的样式很丑?
OK,下面来改改样式
<style scoped>
    .divwrap{
        height: 400px;
        overflow-y: auto;
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
    }
    .divwrap>>>.distpicker-address-wrapper{
        color: #999;
    }
    .divwrap>>>.address-header{
        position: fixed;
        bottom: 400px;
        width: 100%;
        background: #000;
        color:#fff;
    }
    .divwrap>>>.address-header ul li{
        flex-grow: 1;
        text-align: center;
    }
    .divwrap>>>.address-header .active{
        color: #fff;
        border-bottom:#666 solid 8px
    }
    .divwrap>>>.address-container .active{
        color: #000;
    }

</style>
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值