Node.js 使用Moment.js、Node npm和handlbar获取特定天数

Node.js 使用Moment.js、Node npm和handlbar获取特定天数,node.js,npm,handlebars.js,momentjs,Node.js,Npm,Handlebars.js,Momentjs,我正在节点把手中使用moment.js。我找到了这个助手:它很有用,但我希望能够计算从现在到将来某个特定日期之间的天数,并以天为单位返回答案 {{defrom}}中的{moment“12/10/2018”}返回“22天”{{defrom}}中的{moment“12/25/2018”}返回“一个月内”。我想要的是“38天” 我不知道需要改变车把什么来实现这一点。如果您有任何建议,我将不胜感激 为了跟进并详细解释什么对我有效,我在这个问题上加了一句。但本质上,马科斯·卡萨格兰德的答案应该是公认的答案

我正在节点把手中使用moment.js。我找到了这个助手:它很有用,但我希望能够计算从现在到将来某个特定日期之间的天数,并以天为单位返回答案

{{defrom}}中的{moment“12/10/2018”}
返回“22天”<代码>{{defrom}}中的{moment“12/25/2018”}返回“一个月内”。我想要的是“38天”

我不知道需要改变车把什么来实现这一点。如果您有任何建议,我将不胜感激

为了跟进并详细解释什么对我有效,我在这个问题上加了一句。但本质上,马科斯·卡萨格兰德的答案应该是公认的答案

  • 我通过命令行
    npm install moment--save安装了momentjs
  • 在server.js中,我添加了'var moment=require(“moment”)
  • 然后我将Marcos Casagrande的答案复制到server.js中,但增加了一点计算精度<代码>返回Math.abs(矩().startOf('day').diff(矩(日期).startOf('day'),'days')+1)
  • 在我的车把视图中,我使用了
    {{days diff“2018-12-25 00:00”}
  • 我没有在html文件的头部添加moment.js

  • 您只需几行代码即可实现所需:

    您只需要:
    dateA.diff(dateB,'days')

    moment.suppressDepressionWarnings=true;
    车把.登记帮助器('days-diff',date=>{
    返回Math.abs(矩().diff(矩(日期),'days');
    });
    const template=handlebar.compile(`
    截至2018年10月12日:{2018年10月12日}
    截至2018年12月25日:{{days diff“12/25/2018”}
    至2019年12月25日:{2019年12月25日之差}
    `);
    log(template())
    
    
    车把
    
    只需几行代码即可实现您想要的:

    您只需要:
    dateA.diff(dateB,'days')

    moment.suppressDepressionWarnings=true;
    车把.登记帮助器('days-diff',date=>{
    返回Math.abs(矩().diff(矩(日期),'days');
    });
    const template=handlebar.compile(`
    截至2018年10月12日:{2018年10月12日}
    截至2018年12月25日:{{days diff“12/25/2018”}
    至2019年12月25日:{2019年12月25日之差}
    `);
    log(template())
    
    
    车把
    
    这可能会有帮助@小矮人,谢谢你。我面临的一个挑战是将moment.js与把手一起使用。您是否无法在服务器上进行比较或区分?如果在把手循环之前对数组进行了变异或映射,该怎么办?不确定您的约束是什么。如果客户端,考虑在绑定或循环之前映射您的数组或修改对象。再次感谢@ DWD。因为我是新手,所以我不完全清楚应该把什么代码放在哪里。马科斯·卡萨格兰德(Marcos Casagrande)下面的回答是正确的。不必惊呼你是新来的,我们都从某个地方开始。:)这可能会有帮助@小矮人,谢谢你。我面临的一个挑战是将moment.js与把手一起使用。您是否无法在服务器上进行比较或区分?如果在把手循环之前对数组进行了变异或映射,该怎么办?不确定您的约束是什么。如果客户端,考虑在绑定或循环之前映射您的数组或修改对象。再次感谢@ DWD。因为我是新手,所以我不完全清楚应该把什么代码放在哪里。马科斯·卡萨格兰德(Marcos Casagrande)下面的回答是正确的。不必惊呼你是新来的,我们都从某个地方开始。:)