指令

2016-05-05 6 views
0

HTML:指令

<div custDirective id="managerNames"></div> 
<div custDirective id="empNames"></div> 

Template.html

<div ng-repeat="name in names"> 
<ol><li>{{name}}</li></ol> 
</div> 

指令リンク機能:私はに基づいて動的なリストを取得したい

if(attr.id === "name"){ 
scope.names = ["A","B","C","D"]; 
}else{ 
scope.names = ["E","F","G","H"]; 
} 

id属性.ie、idがmanagerNamesの場合、ng-repeatはa、b、c、dを繰り返す必要があり、e、f、g、hを繰り返す必要があります。

これを行うには?私はangular.js 1.2バージョンを使用しています。

答えて

2

それはあなたがそれに送る値をチェックし、それここ

に応じて動作しますどこにあなたのリンクに属性を送信することができますが、一例である:

//Directive 

angular.module('yourModule').directive('directiveName', 

     function($parse) { 
     return { 
      restrict: 'E', 
      templateUrl: "your/template.html", 
      scope: { 
      check: '@', 
      }, 
      link: function(scope, element, attrs) { 
      if(scope.check == "whatever"){ 

      } 

      } 
    }) 



//HTML 

     <directive-name check="whatever"></directive-name> 
+0

も、このように確認した後。スコープ変数を極端に変更していると、名前コレクションが変化しています。私はそのようにしたくない。私のページでは、同じディレクティブを使用する必要がありますが、別のコレクションをレンダリングする必要があります。 – Keshav1007