谢谢,这帮助澄清了很多问题。
我还没有完全让它运行起来——部分原因是我找不到关于使用计算属性来执行此类操作的示例。
在我的情况下,在我的插件中,我正在组索引模板中进行修改。因此,在文件 plugin/assets/javascripts/discourse/groups/index.hbs 中(我把整个组索引代码放在那里,并在其基础上添加更改)。
你的意思是,计算属性的 JS 代码应该放在我创建的文件 plugin/assets/javascripts/discourse/groups/index.js 中吗?或者我可以直接将代码放在一个初始化器(initializer)中?
这是我尝试实现你所描述内容的最佳方案——这是你心目中的样子吗:
js:
export default Component.extend({
@discourseComputed("group.name", "Amazing_Name")
property(group.name, Amazing_Name) {
return group.name === Amazing_Name
}
})
hbs:
{{#if property}}
<div>是的,有匹配!</div>
{{/if}}
还是你的意思是,我应该字面上在 @discourseComputed 中输入通用值如 “string1” 和 “string2”,然后将模板改为 {{#if property group.name "Amazing_Name"}}?(只有这样才能让模板中的每个值都是动态的。)
我还没有让这两种方法中的任何一种完全运行起来。
感谢你的帮助。