如何格式化reactjs组件中的日期

时间:2014-12-19 15:30:13

标签: ruby-on-rails ruby-on-rails-4 reactjs

我在反应js组件中有这个片段

 <time dateTime={ this.props.created_at } className="date">{ this.props.user + " • "+ this.props.created_at }</time>

结果表明输出类似于luizkowalski • 2014-12-19T15:16:00.274Z。我该如何格式化这个日期?可以通过Rails完成吗?

3 个答案:

答案 0 :(得分:2)

您可以在Ruby中的Time / DateTime对象上使用strftime方法

http://www.ruby-doc.org/core-2.1.5/Time.html#method-i-strftime

答案 1 :(得分:1)

您应该在JSON响应中发送格式化的created_at。如果您正在阐明JSON响应(自己指定),这应该不是问题。否则,您需要覆盖模型中的to_jsonas_json方法,以合并格式化的created_at

例如:

def as_json
  super.merge('created_at' => self.created_at.strftime("%d %b %Y"))
end

答案 2 :(得分:0)

我找到了一个strftime JavaScript库,您可以使用yarn add strftime将其添加到项目中。我在使用webpacker访问库时遇到了一个问题(我仍在学习并从资产管道中进行调整),您可以在这里找到我的问题(包括指向strftime的github链接的链接:< / p>

Rails/Webpack: Can't access a JS library

唯一的问题似乎是它不喜欢应用程序中的格式,这是我必须解决的其他问题。