取决于收到的数据的小部件

时间:2017-10-12 04:53:17

标签: apostrophe-cms

我添加了一个'订阅'片段到我的项目,设置和正常工作。此作品的字段包含订阅有效的年份。我想创建一个新的小部件,它可以检查当前用户是否有与当前年份匹配的订阅,如果没有,则不会显示自己。

我可以弄清楚如何遍历用户的订阅并确定其中是否包含正确的年份,但我却无法找到将当前年份传递到小部件中进行比较的方法用。有没有推荐的方法将额外的数据传递到窗口小部件(在我假设的req.data中),或者在构建Nunjucks模板时获取当前日期的任何方式?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以从模板中将额外数据传递到窗口小部件,例如

{{ apos.singleton(data.page, specialHeader, header, { specialThing: true }) }}

{{ apos.area(data.page, specialArea, { widgets: { header: { specialThing: true } } }) }}

然后检查您的小部件data.options中的widget.html以使用它。

您还可以创建要在Nunjucks模板中使用的任意JavaScript函数(称为helpers)。你可以在这里阅读http://apostrophecms.org/docs/technical-overviews/how-apostrophe-handles-requests.html#template-helpers-invoking-synchronous-java-script-code-from-your-template ..这将是一个回归当年的简单地方。