在vant中使用时间选择器和popup弹出层的操作

 更新时间:2020年11月04日 11:23:04   作者:晓未苏  
这篇文章主要介绍了在vant中使用时间选择器和popup弹出层的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

我就废话不多说了,大家还是直接看代码吧~

<template> 
 <div class="page">
  <van-cell-group>
      <van-cell
       title="选择日期"
       :value="datetime"
       arrow
       @click="showDatePicker = !showDatePicker"
      ></van-cell>
 </van-cell-group>
 <van-popup v-model="showDatePicker" position="bottom" :style="{ height: '40%' }">
   <van-datetime-picker
    v-model="currentDate"
    @confirm="
     showDatePicker = false;
     onchangDate1();
    "
    @cancel="showDatePicker = false"
    title="时间选择"
    type="date"
   />
  </van-popup>
 </div>
<template>
<script>
  import { Cell, CellGroup, DatetimePicker, Popup } from "vant";
  import Vue from "vue";
  export default {
   //组件 Q2组件需要正确注册,才能被页面识别
   components: {
     [Cell.name]: Cell,
     [CellGroup.name]: CellGroup,
     [DatetimePicker.name]: DatetimePicker,
     [Popup.name]: Popup
   },
 //数据层
 data() {
  return {
   datetime: "",
   currentDate: "",  //初始化当前时间
   showDatePicker: false, //判断popup弹出层是否显示,false不显示
  };
 },
 created() {
  this.currentDate = new Date();  //给当前时间赋值
  this.datetime = this.common.dateToString(this.currentDate);  //给单元格显示当前时间的变量赋值
 },
 mounted() {},
 methods: {
  onchangDate1() {
   //currentDate值就是选择的时间,把改变后的值赋值给单元格变量显示
   this.datetime = this.common.dateToString(this.currentDate);  
  }
 }
};
</script>

补充知识:vant的popup、Datetimepicker控件滚动穿透

今天一边改bug一边测试发现,vant的popup跟DatetimePicker会出现滚动穿透。

解决办法:使用preventDefault阻止body的touchmove事件。

方法1

方法2

在全局注册v-roll指令,结合timeDatePicker使用(如第二图)。bodyVisible初始状态为false,在弹层打开时改变,弹层点击确认跟取消时也需要改变!

解决办法源于另一个作者的,附上对方的文章链接(他用的是Mint-ui,但是框架这种东西,大同小异吧,东西都差不多,遇到的问题,很多解决办法都可以相通)

以上这篇在vant中使用时间选择器和popup弹出层的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • VueX学习之modules和namespacedVueX详细教程

    VueX学习之modules和namespacedVueX详细教程

    这篇文章主要为大家介绍了VueX学习之modules和namespacedVueX详细教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • Vue组件实现触底判断

    Vue组件实现触底判断

    这篇文章主要为大家详细介绍了Vue组件实现触底判断,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • 解读Vue-loader的相关知识

    解读Vue-loader的相关知识

    这篇文章主要介绍了解读Vue-loader的相关知识,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Nuxt项目支持eslint+pritter+typescript的实现

    Nuxt项目支持eslint+pritter+typescript的实现

    这篇文章主要介绍了Nuxt项目支持eslint+pritter+typescript的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-05-05
  • 详解Vue3中的watch侦听器和watchEffect高级侦听器

    详解Vue3中的watch侦听器和watchEffect高级侦听器

    这篇文章主要介绍了Vue3中的watch侦听器和watchEffect高级侦听器,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-08-08
  • vue3的二维码组件vue3-next-qrcode

    vue3的二维码组件vue3-next-qrcode

    这篇文章主要为大家介绍了vue3的二维码组件vue3-next-qrcode示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Vue实现选择城市功能

    Vue实现选择城市功能

    这篇文章主要介绍了Vue实现选择城市功能,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-05-05
  • vue实战中的一些实用小魔法汇总

    vue实战中的一些实用小魔法汇总

    这篇文章主要给大家介绍了关于vue实战中一些实用小魔法的相关资料,这些技巧和窍门,可以帮助你成为更好的Vue开发人员,需要的朋友可以参考下
    2021-06-06
  • Vue 实现从文件中获取文本信息的方法详解

    Vue 实现从文件中获取文本信息的方法详解

    这篇文章主要介绍了Vue 实现从文件中获取文本信息的方法,结合实例形式详细分析了vue.js基于export导出的文件信息读取相关操作技巧,需要的朋友可以参考下
    2019-10-10
  • vue-admin-box第一步npm install时报错的处理

    vue-admin-box第一步npm install时报错的处理

    这篇文章主要介绍了vue-admin-box第一步npm install时报错的处理方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-10-10

最新评论