以下単一のプロパティでフィルタリングしますが、別のものでフィルタリングするにはどうすればよいですか?すなわち、異なる検索オプションを含むドロップダウンをユーザに提供することなく、 の例:私の検索用語は、名前、電子メール、または年齢とすることができる。Emberjs:一度に複数のプロパティでフィルタリングする方法
var search = this.controllerFor('employees').search; //can be name, email or age
employees = this.get('currentModel').filterProperty('name', search);
上記は、マスターリストを更新するため正常に動作しますが、私は、一度に1つのプロパティでフィルタすることができています。
//Sample Model
App.Employee = DS.Model.extend({
email: DS.attr('string'),
name: DS.attr('string'),
age: DS.attr('number'),
})
一つの考えフィルタはlength = 0
を生じ、一部がどのような結果をマージする場合は、再度、フィルタを再することです。しかし、私はその考え方では大きくはないし、Emberがこれを達成するためにより良い、よりエレガントな方法を持っていると信じている。
私はちょうど 'filter(fn)'がありませんでした。ニースのMWJ。 – KALBB
私はこれを知らなかったが、 'observe( 'firstName'、 'lastName')'も働いていた。 – rxgx