簡體   English   中英

按模型中的類別過濾每個對象-ember.js

[英]Filtering each by category in model - ember.js

根據標題-我如何做到這一點?

所以我有models/project

export default DS.Model.extend({
    title: DS.attr('string'),
    description: DS.attr('string'),
    image: DS.attr('string'),

    category: DS.attr('string')  
});

我想按projects/index.hbs類別字符串過濾項目

{{#each project in model}}
    <h3>{{project.title}}</h3>
    <p>{{project.description}}</p>
{{/each}}

...

{{#each project in model}}
    <h3>{{project.title}}</h3>
    <p>{{project.description}}</p>
{{/each}}

例如,某些項目具有類別Web ,而其他項目則具有徽標

在第一個{{#each}}循環中,我想在第二個循環中顯示Web類別和徽標

我應該由管制員這樣做嗎? 還是在路線上? PS。 如何使它顯示為默認值,而不是通過單擊以執行action: sortBy等。我確實嘗試自己找到答案,但還沒有找到答案。

您可以將computed property添加到控制器,該控制器按類別過濾項目。

  webCategoryProjects: function() {
    return this.get('model').filterBy('category', 'web');
  }.property('model.@each.category'),

  logoCategoryProjects: function() {
    return this.get('model').filterBy('category', 'logo');
  }.property('model.@each.category'),

{{#each project in webCategoryProjects}}
    <h3>{{project.title}}</h3>
    <p>{{project.description}}</p>
{{/each}}

...

{{#each project in logoCategoryProjects}}
    <h3>{{project.title}}</h3>
    <p>{{project.description}}</p>
{{/each}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM