qusar组件库 ------- Date Picker(日期选择器),关于QInput选择日期后自动关闭日历问题

文章介绍了如何在Qusar框架中,通过QInput、QIcon和QDate组件结合,创建一个日期选择器,并实现选择日期后自动关闭的功能。通过设置readonly属性、使用QPopupProxy和v-close-popup指令,以及编写事件处理函数setDate来控制日历的显示和关闭状态。
摘要由CSDN通过智能技术生成

qusar提供了Date Picker(日期选择器),且可以与input一起使用,但是选择日期后只能点击按钮获取鼠标点击其他地方进行关闭,无法在选择日期后自动关闭,因此自己琢磨了这个方法

html

 <q-input v-model="date"
          mask="date"
          readonly // 设置为只读,可以使用户不能手动修改日期,只能通过日历选择
          borderless // 因为readonly会导致边框不是完整的实线,所以干脆去掉边框自己设置
          style="border: 1px solid #c7c6c6; border-radius:3px;">//此处就是手动设置边框
  <template v-slot:append>
    <q-icon name="event"
            class="cursor-pointer"
            @click="isClose = false"> //点击日历图标显示日历时,将isColse置为false
      <q-popup-proxy cover
                     transition-show="scale"
                     transition-hide="scale">
       <q-date v-model="date"
               :options="optionsFn" //用于设置可选日期范围
               @update:model-value="setDate(date)" //用于选择日期后关闭日历,也可获取选择日期
               v-close-popup="isClose">// 关闭日历的指令,通过isClose标志来决定(true关闭)
        </q-date>
      </q-popup-proxy>
    </q-icon>
  </template>
</q-input>

js

 isClose = false

  // 日期改变时会触发这个函数(即选择日期之后),将isColse设为true实现选择完日期自动关闭日历页面
  setDate(date) {
    this.isClose = true
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值