我正在编写一个主题组件,它会对某个特定类别执行任意操作。我在该组件中唯一能访问的变量是类别列表,而我需要从中提取正确的那个。
c for c in category_list if c.slug == 'foobar'
在 Ember 逻辑受限的情况下,我可能需要这样做:
{{#if category.slug == 'foobar'}}
但这在原生版本中无法实现。我们需要为一个如此底层的比较操作添加辅助函数。
主要有两个选项:
- 在对象中添加一个方法或属性,使其仅对列表中的正确类别返回
True。 - 注册一个
eq辅助函数,而据我所知,这个库 已经是相当标准的方案了。
{{#if (eq person "John")}} hello {{/if}}
到目前为止,我不知道如何为主题组件实现上述任何一种方案。
我曾看到 一篇帖子 解释了如何在插件中实现第二种方案,但这似乎与主题无关。
有人能解释一下该如何操作吗?
另外,核心团队是否可以考虑在 discourse-commons 中添加一些相当标准的逻辑辅助函数?我相信它们会对许多像我这样技能水平较低的开发者很有用。