Sunucudan bazı veriler alan bir işlev içeren bir denetleyicim var. Bu verileri bir hizmet değişkeninde saklıyorum. Bu hizmet daha sonra bir direktif içine enjekte edilir. Direktifin otomatik olarak güncellenmesini istiyorum, bu işlev çağrıldığında ve veriler yenilendiğinde.Bir hizmet değişkenini bir direktifle ilişkilendirin mi?
Benim denetleyicisi:
angular
.module('myApp')
.controller('myCtrl', ['$scope', 'SomeService', function($scope, SomeService) {
$scope.update = function() {
SomeService.myValue = 100;
}
}]);
direktif:
angular.module('myApp')
.directive('myDirective', ['SomeService', function(SomeService) {
return {
templateUrl : 'views/myDirective.html',
restrict : 'E',
scope : false,
controller : function($scope) {
this.myValue = SomeService.myValue;
}
};
}]);
şablonu:
<div>
{{ myValue }}
</div>
güncelleme işlevi, bir düğme tıklandığında denir ve bir karşı MyValue günceller edilir yeni değer. Direktife otomatik olarak yansıtılmasını istiyorum.
Düşmek: http://plnkr.co/edit/OUPzT4MFS32OenRIO9q4?p=preview
Teşekkürler! Bunu takip ettim, bağlantı fonksiyonundaki verilere erişebiliyorum. Ama şaşırtıcı olarak, direktifte göremiyorum! –
@RutwickGangurde bana tam olarak nerede olduğunu söyleyebilir misiniz? – sylwester
Bu ve bir şey daha ... Direktife açıkça bir denetleyici atamadım. Yönergede kullandığım veriler bir nesnedir. Bağlantı işlevinde mevcut olduğunu görebiliyorum. Ama bunu direktifin şablonunda kullandığımda görünür değil. –