我正在节点把手中使用moment.js。我找到了这个帮助程序:http://moment.handlebars.solidgoldpig.com/,它非常有用,但是我希望能够计算从现在到将来的特定日期之间的天数,并以天为单位返回答案。
{{moment "12/10/2018" "from" dfrom}}
返回“ 22天”。 {{moment "12/25/2018" "from" dfrom}}
返回“一个月内”。我想要的是“ 38天”。
我无法弄清楚需要更改哪些把手才能完成此操作。我将不胜感激所有建议。
为了继续进行并提供对我有用的详细解释,我添加了这个问题。但本质上,Marcos Casagrande的答案应该是公认的答案。
npm install moment --save
安装了momentjs的return Math.abs(moment().startOf('day').diff(moment(date).startOf('day'), 'days')+1);
{{days-diff "2018-12-25 00:00"}}
答案 0 :(得分:2)
您可以通过几行代码来实现所需的目标:
您需要做的是:dateA.diff(dateB, 'days'));
moment.suppressDeprecationWarnings = true;
Handlebars.registerHelper('days-diff', date => {
return Math.abs(moment().diff(moment(date), 'days'));
});
const template = Handlebars.compile(`
Until 12/10/2018: {{days-diff "12/10/2018"}}
Until 12/25/2018: {{days-diff "12/25/2018"}}
Until 12/25/2019: {{days-diff "12/25/2019"}}
`);
console.log(template());
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Handlebars</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/4.0.8/handlebars.js"></script>
<body>
</body>
</html>