2016-10-28 6 views
0

HTML要素を必要とするAngularJS指示文を作成しました。 1)フォームの子になります。 2) 'conditional-value'属性があります。これを実現するためにAngularJS指令で必要な属性のリストを設定するには?

私はこのようなディレクティブを作成しました:

.directive('onFocusoutDoSomething', function() { 
    return { 
     require : ['^?form', '^conditionalValue'], 
     restrict : 'A', 
     link : function(scope, element, attrs, ctrl) { 
      // ... do something 
      } 
    } 
}) 

しかし、私はこの例外を取得何らかの理由: コントローラー「conditionalValue」ディレクティブで必要な「onFocusoutDoSomething」、見つけることができません!

キャメルケースのディレクティブの名前と属性は、AngularJSのダッシュケースに置き換えられます。

答えて

0

属性タイプディレクティブを作成する必要がある場合は、ディレクティブまたはbindToControllerのscope {conditionalValue: '='}に配置する必要があります。{conditionalValue: '='}、require:{}、require指示通信への指示に使用されます。

ディレクティブ定義オブジェクトが必要な場合、そのディレクティブは、requireフィールドに記述されているform parentディレクティブを継承します。あなたが持っている場合、たとえば、

app.directive('tabSet',function(){ 
//DDO 
}); 

タブディレクティブは、タブセットディレクティブのコントローラのプロパティを継承することができます。

app.directive('tabs',function(){ 
    return{ 
    require:'^tabSet' 
    } 
}); 
関連する問題