icu_date 出现错误消息 attempt to index a number value

我想使用 icu_date 库,但是当我尝试插入一个值时,会出现错误消息

icu_date = require("icu-date")
format_date = icu_date.formats.iso8601()
end_time = icu_date.now()
1602586287098 - 打印数值
end_time:set_millis(1602461532000)
错误:'[string "return end_time:set_millis(1602461532000)"]:1: attempt to index global ''end_time'' (a number value)'

也许库不够?

  • 库 libicu-devel-50.2-4.el7_7.x86_64
  • 系统: Centos 7
点赞
用户11592715
用户11592715

似乎你需要使用icu_date.new()(而非now)来创建新实例。然后你可以按照你想要的方式使用它:

icu_date = require("icu-date")
format_date = icu_date.formats.iso8601()
end_time = icu_date.new()
end_time:set_millis(1602461532000)
tarantool> end_time:format(format_date)
---
- 2020-10-12T00:12:12.000Z
...

icu_date.now()返回当前时间。实际上它是一个数字值。

tarantool> icu_date = require('icu-date')
---
...

tarantool> icu_date.now()
---
- 1602597687320
...
2020-10-13 14:04:22