如何在电报即时视图中使用@datetime函数?

时间:2019-02-05 13:59:07

标签: view telegram instant

我正在尝试建立电报即时视图。我在使用日期时间@datetime函数时遇到问题,我看过official documentation

我有以下日期Jul 19, 2018 at 2:25pm。如果我们在日期的同一年,则该字符串将不包含年份,例如:Jul 19 at 2:25pm表示今年7月19日。如何处理缺少的年份?

到目前为止,这是我的代码。

@datetime(-2, "en-US", "LLL d 'at' k:mm"): "Jan 25 at 2:44pm"
published_date: $@

#manage the current year case
@datetime(0, "en-US", "LLL d, YYYY 'at' k:mma"): "Jan 25, 2018 at 2:44pm"
published_date: $@

截至目前,缺少的年份尚未得到适当的管理。这样,一年始终是1970年。

1 个答案:

答案 0 :(得分:0)

算法如下:

  1. 尝试使用YYYY来解析日期
  2. 如果失败,$pubslished_date将包含0或一些垃圾(尝试对其进行@debug)。因此,您可以使用类似@if_not( $published_date ) { ... }的方法,在其中可以尝试不使用YYYY来解析日期。不要忘记用published_date!: …强制重新定义变量。

如果这不起作用,请尝试使用条件绑定:pubslihed_date?: …。它具有相同的逻辑。 (只需在当前代码的第二个绑定中添加问号?。)