0
我有一個指令,總是放在裏面<form>
的元素包裝形式元素(input/select/etc
),讓我們假設指令被稱爲wrapper
:方式來訪問元件控制器(如ngModel和形式)
<form>
<something>
<wrapper>
<input />
</wrapper>
</something>
</form>
而且從這個指令中我需要訪問formController
和ngModelController
。我知道我可以在包裝的指令定義對象中使用require: ^form
,但我仍然需要訪問ngModelController
。我發現兩種方法來實現它:
childFormControl.controller('ngModel')
childFormControl.data('$ngModelController')
// also for controller I could use this, instead of require
childFormControl.closest('form').controller('form')
childFormControl.closest('form').data('$formController')
我的問題是:它認爲一個黑客使用controller
或data
方法來訪問控制器或者是它的安全,並視爲公共角 API的使用情況如何?我沒有在Angular文檔中找到任何有關此方法的示例。
您將有機會獲得ngModelController如果添加另一個控制器(表單控制器)到您的包裝指令 – gr3g