v-distpicker地区选择器组件使用

1、参考文档:https://jcc.github.io/v-distpicker/

2、在vue中安装

npm install --save v-distpicker

3、在vue中引用

        局部引入方式:

import VDistpicker from 'v-distpicker'

Vue.component('v-distpicker',VDistpicker)

         全局引入:在src目录下的main.js文件中添加引入代码

import VDistpicker from 'v-distpicker'

export default {
  components: { VDistpicker }
}

4、基础实现

<template>
  <div>

    <v-distpicker       
                        :province="form.province" 
                        :city="form.city" 
                        :area="form.area"
                        @province="vDistpickerHandle($event,'province')"
                        @city="vDistpickerHandle($event,'city')"
                        @area="vDistpickerHandle($event,'area')"
                        ></v-distpicker>
	</div>

</template>
<script>
// 引入地区选择


import VDistpicker from 'v-distpicker'
export default {
components: { VDistpicker },
  data(){
    return{
      form: {
        province: '',
        city: '',
        area: ''
      },
    }
 
  },
  methods:{
    vDistpickerHandle(event,value){
      console.log(event);
      console.log(event.value);
      this.form[value]=event.value
    },
  }
}

</script>

代码添加了一个vDistpickerHandle的事件处理函数对地区选择器中的数据进行处理,将数据存储到form对象的相应属性中,方便数据提交。

好的,下面我来举一个v-distpicker校验的例子。假设我们有一个表单需要用户填写收货地址,其中收货地址是必填项,我们可以使用v-distpicker来实现地址的省市区三级联动选择,同时开启校验功能。 首先,在模板中使用v-distpicker组件,并设置`validate`属性为`true`: ``` <template> <div> <v-distpicker v-model="address" :validate="true"></v-distpicker> <span v-if="!isValid">请填写收货地址</span> </div> </template> ``` 然后,在组件的`data`中定义`address`和`isValid`变量,并在`validate`函数中进行校验: ``` <script> export default { data() { return { address: { province: '', city: '', district: '' }, isValid: true } }, methods: { validate() { if (!this.address.province || !this.address.city || !this.address.district) { this.isValid = false; } else { this.isValid = true; } } }, watch: { address: { handler: 'validate', deep: true } } } </script> ``` 在上面的代码中,我们在组件的`data`中定义了`address`和`isValid`变量,其中`address`用于存储用户选择的省市区信息,`isValid`用于记录地址信息是否有效。在`validate`方法中,我们对`address`的省、市、区进行非空校验,如果任意一项为空,则将`isValid`设置为`false`,否则将`isValid`设置为`true`。最后,我们在`watch`选项中监听`address`的变化,当`address`发生变化时,自动调用`validate`方法进行校验。在模板中,我们通过`v-if`指令来根据`isValid`的值显示提示信息。 这样,我们就可以通过v-distpicker实现地址信息的校验了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值