使用 moment.js 在日期和时间之间添加空格

Ree*_*off 5 momentjs vue.js

我有一个从数据库返回的 ISO 格式的日期时间。它们看起来像这样:2015-11-03T10:06:50.000Z。我使用 moment.js 来解析它,以便它更具可读性,结果如下所示:11-03-2015 10:06:50 AM。我只是想在日期和时间之间添加另一个空格,以便更容易阅读。有什么想法吗?

我尝试在日期和时间之间添加另一个空格,但似乎它删除了除一个空格之外的所有空格。我也尝试过连字符和管道,但它们看起来并不像我想要的那样。

rows.forEach(row => {
    // TODO find a way to put more blank space between date and time
    let formattedDateTime = moment.utc(row.DateTime).format(`MM-DD-YYYY hh:mm:ss A`)
    row.DateTime = formattedDateTime
    // console.log('formatted datetime', formattedDateTime)
  })
Run Code Online (Sandbox Code Playgroud)

预期:在 moment.format 中的日期和时间之间添加空格将在客户端上反映这种方式。

实际:日期和时间之间只允许有一个空格。所有其他空格均被删除。

eve*_*ven 7

有相同的要求,解决方案是使用 \xa0

moment(日期).format('YYYY-MMM-DD\xa0\xa0\xa0HH:mm');


Mat*_*att 3

这不是 moment 或 vue 的问题,momentjs 会在您添加空格时添加它们(您可以通过调试 var 或使用控制台日志轻松检查),但默认情况下您的浏览器会将多个空格折叠为单个空格。查看CSS空白属性以了解更多信息。

另外,您不应该处理日期如何在 JS 中显示,而应该在 CSS 中处理。因此,对于您的情况,我的建议是将日期和时间分成 JS 代码中的 2 个变量,并调整您的 HTML 模板和 CSS 以正确显示它们。

通常在 HTML 代码中添加多个空格(甚至在 JS 代码中添加更多空格)并不是一个好方法,您应该使用 CSS 来实现。