[英]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.