2014-09-05 67 views
0

人們可以使用需要屬性的依賴添加到自定義指令,例如在角指令,要求兩個依賴

要求:「?^形式」

是否有可能增加多個依賴?

我在寫一個指令,它需要ngFormController以及ngModelController。

回答

3

是,使用的數組:

require: [ 
    '^?form', 
    '^otherDirective' 
] 

而關於link功能將收到控制器而不是僅1個控制器的陣列:

link: function(scope, element, attrs, controllers) { 
    // controllers[0] == formController 
    // controllers[1] == otherDirectiveController 
} 
1

你可以在這裏看到Official doc for $compile - 它涵蓋了很好的指令。

require: 'siblingDirectiveName', // or // ['^parentDirectiveName', '?optionalDirectiveName', '?^optionalParent'], 

如果你傳遞一個數組要求,第四個參數傳送給link功能將與需要指定控制器的順序數組。