2017-06-30 11 views
0

私のカスタムカスタムディレクティブに少し問題があります。私は "タイプ"変数にアクセスしたいと思います。これは、フィルタリングされたオブジェクトです(最初のレベルでは、カスタムフィルタなしで可能でなければなりません)。フィルタで角度カスタムの使用スコープ変数を使用する

これは(今のところ非常に基本的な)である構造:

angular.module('....').directive('ngTest', function() { 
return { 
    restrict: 'AE', 
    replace: 'true', 
    scope: { 
    list: '=', 
    type: '@' 
    }, 
    template: '<div><ul><li ng-repeat="information in list | filter:{ttype:type}">....</li></ul></div>' 
    } 
}); 

は、テンプレート文字列内の変数にアクセスする方法がありますか?どちらもない変数の名前を変更し、それが突然動作しますディレクティブ書き換え後..

おかげで、 クリス

答えて

1

リンク関数を使用してスコープ変数からフィルタを構築します。

これはやや面倒ではなく、将来的にフィルタを変更する柔軟性が増します。あなたがうまく働いたディレクティブ

+0

を変更することなく、あなたが望むものに基づいてフィルタリングすることができますそのように - ここで

angular.module('....').directive('ngTest', function() { return { restrict: 'AE', replace: 'true', scope: { list: '=', type: '@' }, template: '<div><ul><li ng-repeat="information in list | filter:filterOb">....</li></ul></div>', link: function(scope, element, attrs) { scope.filterOb = { ttype: scope.type } } } }); 

ではなく、あなたがディレクティブに、だけではなく、文字列全体のフィルタオブジェクトを渡す作業plunkです:) どうもありがとう! – Chris

0

をエスケープも私のために働いたテンプレートHTMLファイルを使用して:たまに

<li ng-repeat="information in list | filter:{ttype:type}">{{information.value}}</li> 

をそのわずか..厄介。 それでも:ありがとう!

関連する問題