当前位置: 首页 > news >正文

vant2 van-calendar组件增加清除按钮和确定按钮

  1. 利用自定义插槽增加一个清除按钮
    在这里插入图片描述
  <van-calendar ref="fTime1" @select="selectTimePicker" @confirm="changeTimePicker" :default-date="null" :show-confirm="false" v-model="timePickerShow" type="range" :min-date="minDate" color="#57c315 "title="请选择时间"><template slot="footer"><div class="btns"><van-button @click="clearTimePicker" class="cancel-btn filter-time_btn">清除</van-button><van-button @click="confirmTimePicker" :disabled="isCanConfirm" type="primary" class="order-btn-order filter-time_btn">确认</van-button></div></template></van-calendar>

定义清除事件

    clearTimePicker () {//初始化日期置空this.$refs[fTime].defaultDate = null;//重置组件this.$refs[fTime].reset();//日期赋值初始化//其他事件}
  1. 自定义按钮是没有传值。清除事件是比较简单的,但是会影响原本组件的确认按钮,自定义按钮是没有传值的。

设置组件:show-confirm=“false”,如下图,如果是false,则当你选择完两个日期就会触发confirm事件
在这里插入图片描述
在这里插入图片描述定义@confirm的触发事件,将选好的date保存起来,等点击确认按钮的时候,再将值传入,进行处理并关闭弹窗

        changeTimePicker (date) {this.tempTimePicker = date;},
  1. 不会根据是否选择了两个日期来改变( type=“range”),改变确认按钮状态(没有完成选择之前disabled的效果与原组件效果一样。如果不做,则确认点击的时候需要做校验),原组件需要选择了开始日期和结束日期才会触发confirm事件,只选择一个,或从两个变成一个等事件,并不会触发。这时候需要使用select事件,并定义一个变量isCanConfirm,来控制按钮的状态。
    在这里插入图片描述代码如下
        selectTimePicker (date, ) {if (date && date[1]) {this.isCanConfirm = false;} else {this.isCanConfirm = true;}}

注意:date是一个数组,有两个对象,只选择一个日期的时候,返回[{日期},null],故不能根据数组的长度来进行判断。

http://www.lryc.cn/news/148917.html

相关文章:

  • Spring redis使用报错Read timed out排查解决
  • C语言每日一练-------Day(9)
  • SpringCloud(十)——ElasticSearch简单了解(三)数据聚合和自动补全
  • 二叉查找树(binary search tree)(难度7)
  • windows环境装MailHog
  • Ubuntu 22.04.2 LTS 安装python3.6后报错No module named ‘ufw‘
  • Flutter小功能实现-咖啡店
  • JavaSE 集合框架及背后的数据结构
  • -9501 MAL系统没有配置或者服务器不是企业版(dm8达梦数据库)
  • 云备份——第三方库简单介绍并使用(上)
  • MySQL数据库之索引
  • OpenCV(四):Mat支持的运算
  • WebRTC音视频通话-WebRTC推拉流过程中日志log输出
  • 用Jmeter压测问题解决
  • C语言:字符函数和字符串函数(一篇拿捏字符串函数!)
  • 问道管理:成交量买卖公式?
  • 【MySQL】5、MySQL高阶语句
  • 【Linux】redhat7.8配置yum在线源【redhat7.8镜像容器内配置yum在线源】通用
  • 强大的处理器和接口支持BL304ARM控制器
  • react 基础知识(一)
  • SpringBoot整合JUnit、MyBatis、SSM
  • virtuoso61x中集成calibre
  • com.google.guava:guava 组件安全漏洞及健康分析
  • Hadoop服务脚本
  • [QT]设置程序仅打开一个,再打开就唤醒已打开程序的窗口
  • 数据库(二) Oracle篇
  • TDengine函数大全-目录
  • 代理模式之静态代理
  • LeetCode——栈的压入、弹出序列
  • Flutter 逆向安全