Ember 视图中的条件
Ember conditions in views
我有一个简单的博客,我在其中学习 Ember。
现在我有一个控制器
App.IndexController = Ember.ArrayController.extend({
sortProperties: ['originalId:desc']
sortedPosts: Ember.computed.sort('model', 'sortProperties'),
})
所以在模板中我显示了所有帖子。为此,我想在我所有的帖子附近显示编辑 link。
所以问题是如何在把手中做到这一点。
我想做这样的事情:
{{#each post in sortedPosts}}
<h1>{{link-to post.title 'post' post }}</h1>
{{#if session.isAuthenticated and post.ownedBy(session.user)}} <!--This place doesn't work-->
{{link-to 'Edit' 'post.edit' post }}
{{/if}}
{{{post.text}}}
<hr/>
{{/each}}
我发现了这个问题Logical operator in a handlebars.js {{#if}} conditional,但我希望有更好的解决方案。
P.S.: 还有一个关于SortableMixin排序的问题。当 sortProperties
更改时,它不会重新加载模板。所以我必须再创建一个 属性 sortedPosts
。也许有人知道为什么它不起作用?
您需要在控制器中创建计算 属性,然后在视图中使用它。如果您有 2 个计算属性并想将它们组合成第 3 个 - 您可以使用 computed.and
(参见 here)
我有一个简单的博客,我在其中学习 Ember。
现在我有一个控制器
App.IndexController = Ember.ArrayController.extend({
sortProperties: ['originalId:desc']
sortedPosts: Ember.computed.sort('model', 'sortProperties'),
})
所以在模板中我显示了所有帖子。为此,我想在我所有的帖子附近显示编辑 link。
所以问题是如何在把手中做到这一点。
我想做这样的事情:
{{#each post in sortedPosts}}
<h1>{{link-to post.title 'post' post }}</h1>
{{#if session.isAuthenticated and post.ownedBy(session.user)}} <!--This place doesn't work-->
{{link-to 'Edit' 'post.edit' post }}
{{/if}}
{{{post.text}}}
<hr/>
{{/each}}
我发现了这个问题Logical operator in a handlebars.js {{#if}} conditional,但我希望有更好的解决方案。
P.S.: 还有一个关于SortableMixin排序的问题。当 sortProperties
更改时,它不会重新加载模板。所以我必须再创建一个 属性 sortedPosts
。也许有人知道为什么它不起作用?
您需要在控制器中创建计算 属性,然后在视图中使用它。如果您有 2 个计算属性并想将它们组合成第 3 个 - 您可以使用 computed.and
(参见 here)