Как запустить moment.js в шаблонах pug? - PullRequest
0 голосов
/ 04 октября 2018

У меня есть элемент управления, который будет отображать шаблон мопса с массивом объектов.

res.render('template.pug', {objects: objects}); 

В шаблоне я перебираю массив и изменяю дату на local date/time. Я хотел бы вызвать функцию момента для реализации этого.

Можно ли вызвать функцию момента в шаблоне мопса?Или есть лучшее решение?

Ответы [ 2 ]

0 голосов
/ 05 октября 2018

В вашем app.js (или server.js или в любом другом приложении, которое запускает ваше нодовое приложение) добавьте следующую строку:

app.locals.moment = require('moment');

Это сделает момент доступным во всех ваших шаблонах мопса как moment.Конечно, также убедитесь, что вы запустили npm install moment --save, чтобы добавить его в свой package.json и загрузить пакет.

0 голосов
/ 04 октября 2018

Вы можете импортировать / передавать библиотеку moment.js в свой существующий массив objects следующим образом:

var objects= {
  someExitingKey1: 'Some value 1',
  someExitingKey2: 'Some value 2',
  ........,
  ........,
  ........,
  moment: require('moment')
};

И в своем template.pug вы можете использовать функции моментной библиотеки, такие как,

doctype html
html
  head
    title= title
  body
    span= moment(someDateValue).format('YYYY-MM-DD')

Надеюсь, это поможет!

...