iView 的 TimePicker 怎么设置默认时间不生效?

司空爱华 阅读 3

我在用 iView 的 TimePicker 组件时,想给它设置一个默认的选中时间,比如当前时间,但不管我怎么设 value 或 default-value 都没反应,界面上还是空的。

试过传字符串 '14:30',也试过用 new Date(),都不行。是我写法有问题吗?

<TimePicker type="time" :value="defaultTime" placeholder="选择时间"></TimePicker>

data 里我是这样写的:

data() {
  return {
    defaultTime: '14:30'
  }
}
我来解答 赞 2 收藏
二维码
手机扫码查看
1 条解答
诸葛文科
iView 的 TimePicker 组件设置默认时间确实有点坑,有时候直接赋值可能不会生效。你需要确保绑定的是一个 Date 对象而不是字符串。你可以尝试在 data 初始化的时候创建一个新的 Date 对象。代码优化一下可以这样写:

pre class="pure-highlightjs line-numbers">data() {
return {
defaultTime: new Date() // 这里用当前时间作为默认值
}
}


然后在模板里保持不变:

<TimePicker type="time" :value="defaultTime" placeholder="选择时间"></TimePicker>

这样应该就能看到默认时间了。如果还是不行,检查一下是不是其他地方覆盖了这个值。有时候 Vue 的响应式系统需要一点时间去更新 DOM,确保这个数据在组件渲染之前已经准备好。
点赞
2026-03-24 20:14