Добавьте пробел между датой и временем с помощью moment.js - PullRequest
0 голосов
/ 16 января 2019

У меня есть дата и время из моей базы данных в формате 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)
  })

Ожидается: добавление пробелов между датой и временем в момент. Формат будет отражать это на клиенте.

Факт: разрешено только один пробел между датой и временем. Все остальные пробелы удалены.

Ответы [ 3 ]

0 голосов
/ 16 января 2019

Это не проблема момента или vue, momentjs будет добавлять ваши пробелы по мере их добавления (вы можете легко проверить это путем отладки вашего var или с помощью журнала консоли), но ваш браузер по умолчанию свернет несколько пробелов только в один пробел. Посмотрите на свойство white-space CSS, чтобы узнать больше.

Кроме того, вы не должны обрабатывать, как дата будет отображаться в вашем JS, она должна обрабатываться в вашем CSS. Поэтому мой совет в вашем случае - разделить дату и время на две переменные в вашем коде JS и адаптировать HTML-шаблон и CSS для их правильного отображения.

Обычно добавление нескольких пробелов в вашем HTML-коде (и даже больше в вашем JS-коде) не очень хороший подход, вместо этого вы должны достичь этого с помощью CSS.

0 голосов
/ 09 апреля 2019

имеют такое же требование, решение заключается в использовании \ xa0

момент (дата) .format ( 'YYYY-MMM-DD \ xa0 \ xa0 \ xa0HH: мм');

0 голосов
/ 16 января 2019

Попробуйте использовать литерал шаблона при назначении:

let d = moment.utc(row.DateTime)

row.DateTime = `${d.format('MM-DD-YYYY')}  ${d.format('hh:mm:ss A')}`
...