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