在assemble.io中使用力矩助手

时间:2019-01-28 18:36:46

标签: momentjs assemble

我在使用assemble.io助手的情况下遇到问题。我们使用的软件允许我们使用这些助手来自定义文档。我正在尝试在日期中增加天数。我希望我们的发票在发票日期前增加30天作为到期日。这是我尝试过的:

InvoiceDate是软件用来提取日期的变量。

{{moment InvoiceDate add="30, 'd'" format="MMM DD, YYYY"}}
{{moment InvoiceDate add="30, 'days'" format="MMM DD, YYYY"}}

我在做什么错了?

http://assemble.io/helpers/helpers-dates.html https://momentjs.com/docs/

1 个答案:

答案 0 :(得分:0)

通过查看README.md examples作为当前帮助者,传递给add属性的值需要是一个对象,其键为粒度(“天”),且值为数量(30)。

您不能在Handlebars中将对象格式化为文字,因此数据需要以某种方式传递。如果您使用的是处理前沿问题的软件,则可以执行以下操作:

---
modifiers:
  invoiceDate:
    days: 30
---
{{moment InvoiceDate add=modifiers.invoiceDate format="MMM DD, YYYY"}}

否则,您将必须以某种方式在上下文中包含修饰符,以使Handlebars能够看到:

let fn = Handlebars.compile('{{moment InvoiceDate add=modifiers.invoiceDate format="MMM DD, YYYY"}}');
let data = {
  InvoiceDate: new Date(),
  modifiers: {
    invoiceDate: {
      day: 30
    }
  }
};

console.log(fn(data));