Dlaczego $ element jest dostępny / wprowadzony do kontrolera?
W AngularJS zauważyłem, że kontroler jest wstrzykiwany$element
, który jest opakowaniem JQuery / JQLite elementu kontrolowanego przez kontroler. Na przykład:
<body ng-controller="MainCtrl">
Następnie możesz uzyskać dostęp do elementu ciała w kontrolerze poprzez wstrzykiwanie$element
app.controller('MainCtrl', function($scope, $element) { ...
Można to zobaczyć działając naten Plunkr.
I wydaje się być potwierdzone jako celowa funkcja wdocs dla $ compile
Moje pytania to:
W świetle różnych poradników i samouczków, które sugerują, że nie powinieneś mieć dostępu do DOM w kontrolerze, dlaczego jest to możliwe?
Czy jest w tym jakiś niezobowiązujący przypadek użycia?
Czy są jakieś przykłady wykorzystania tego kodu w dostępnym kodzie?
Dzięki.