You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bootstrap Vue Timepicker需求:选小时后自动设分钟为00且初始为空

解决方案

要实现打开Bootstrap Vue Timepicker时小时和分钟为空,且选择小时后自动将分钟设为00,可按以下方式修改代码:

1. 保留初始空状态

你当前在data中已经将meditation.start.time设为空字符串,这部分无需改动,Timepicker会正常显示label-no-time-selected设置的提示文本。

2. 修改时间选择后的处理逻辑

更新meditationTimeChange函数,在用户选择时间后强制将分钟部分固定为00:

meditationTimeChange(id) {
  if (id.time === '') {
    id.status = false;
  } else {
    // 拆分时间字符串,将分钟替换为00
    const [hour] = id.time.split(':');
    id.time = `${hour}:00`;
    id.status = true;
  }
  this.meditationValid();
}

3. 可选:限制分钟选择范围

如果想从源头避免用户选择非00的分钟,可以给Timepicker添加minute-step="60"属性,让分钟选择器仅显示00选项:

<b-form-timepicker 
    v-model="meditation.start.time"                     
    locale="en" 
    :state="meditation.start.status"
    class="m-1"
    now-button
    required                    
    @input="meditationTimeChange(meditation.start)"
    label-close-button="Close"
    label-no-time-selected="Start Time"
    minute-step="60" <!-- 添加该属性 -->
>
</b-form-timepicker>

最终效果:

  • 打开Timepicker时,小时和分钟区域为空,显示"Start Time"提示
  • 用户选择任意小时后,分钟自动设为00
  • 添加minute-step="60"后,用户无法选择其他分钟值,进一步保证分钟始终为00

内容的提问来源于stack exchange,提问作者SoroushAU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 05:48:06