私はAngularJSディレクティブ内でフィルタを使用しようとしていますが、正確な方法はわかりません。メーリングリストのいくつかの情報から、$ filterを注入して使用できるはずですが、どのように/どこで呼び出すのかはわかりません。AngularJSのディレクティブでフィルタを使用する
私のディレクティブは、現在、次のようになります。
myApp.directive('fancyDisplay', ['$filter', function($filter) {
return {
scope: {
'fancyDisplay': '='
},
template: "<div ng-repeat='datum in fancyDisplay | filter:tagFilter'>{{datum.name}}</div>"
};
}]);
filter:tagFilter
が機能していません。ディレクティブのデータをどのようにフィルタリングする必要がありますか?
JSfiddle利用可能http://jsfiddle.net/VDLqa/4/お返事ありがとうございます。
うーん...私はそれを複数のフィルターにどのように拡張しますか? – jgm
より多くのattrsを定義してください: '
'と 'scope:{fancyDisplay: '='、filter1: '='、filter2: '='}'の指示に従ってください。注:私はそれらを 'filter1'と 'filter2'と呼んでいますが、あなたが好きなものを呼び出すことができます。また、多くのフィルタを使い始める場合は、 'ng-model'データをディレクティブに送る前にそれをあらかじめフィルタリングすることをお勧めします。 – bmleiteプレフィルタリングは私が始めたところで面白いです。私は指令自体でこれを試しましたが、動作しませんでした。これを達成するために私はどのようにフィドルを変えますか? – jgm