我想在vuetify中执行一个time picker
,并获取12小时格式的时间值,其中包含“A.M.”或“P.M.”
我试图在12小时内得到时间,但有一个错误。
第一次加载。我得到 :undefined 值。
如果我在 AM 中选择时间,我没有问题,但不显示AM。
如果我选择下午的时间,这就是我得到的。
我想做的是获取带有 AM 和/或 PM 的时间。
我如何才能做到这一点?
我尝试过这种条件,但它没有得到“A.M”/“P.M”值。
{{
(time.split(':')[0] >= 13 ? time.split(':')[0] % 12 : time.split(':')[0])
+ ':' + time.split(':')[1], time.split(':')[0] >= 13 ? 'PM' : 'AM'
}}
2条答案
按热度按时间dauxcl2d1#
就我个人而言,试图在一条线上做所有事情会导致我遇到这样的问题。要正确地工作是很困难的,更难阅读/理解。我更喜欢把它分解成一个方法,在这个方法中,过程可以通过多个步骤来执行和理解。使用v-timepicker update:period方法跟踪AM/PM也有帮助
updated codepen
。。。如果你真的愿意,你可以把它们全部浓缩成一行,现在各个部分都在工作
很好。希望以后不需要维护:)
ozxc1zmp2#
我建议您利用原生
Intl.DateTimeFormat
API。它允许您配置输出字符串的样式,并适应用户的区域设置。