Мне нужно использовать функцию ссылки для управления некоторыми элементами моего DOM, но для этого мне нужно использовать сервис. В функции контроллера я знаю, как это сделать, но в функции связи я понятия не имею, как этого добиться.Как ввести услугу в функцию связи?
--EDIT-- Позвольте мне поставить себя более ясно:
Я использую угловой с листовкой мерно. Но в листовке событие должно быть поставлено на link
функции, как показано ниже:
link: function($scope) {
$scope.to.marker.on('dragend', function(eventArguments) {
var newPosition = eventArguments.target.getLatLng();
$scope.model.geocodes = newPosition;
});
}
Проблема заключается в том, что мне нужно, чтобы ввести услугу по этому вопросу. В угловом виде (http://docs.angular-formly.com/docs/formlyconfig) он показывает мне, что я могу ввести услугу на controller: function($scope)
, но не давайте мне сделать то же самое на link
, и когда я меняю $scope.model.geocodes
по ссылке, он не запускает watcher
, который я установил в контроллере своего custom-template
.
Ожидаю, что я ясно дал понять.
Это неверный подход. Сначала вы должны разрешить любые данные в вашем контроллере, а затем, если необходимо, управлять элементом dom с разрешенными значениями. Я предполагаю, что вы используете $ scope, чтобы с этим справиться. Я бы рекомендовал использовать синтаксис ControllerAs. С Angular 1.5.x вы должны идеально использовать компонент и использовать $ element injectable и полагаться на свое представление, чтобы обрабатывать любые изменения в dom. Многие подходы действительны, хотя, только мои личные предпочтения. – zilj
@musefan Я понял это как «Как использовать сервис в функции ссылки директивы» – zero298