Я использую директиву, которая вводит услугу. Когда данные меняются из службы, я бы хотел, чтобы директива обновлялась.AngularJs refresh директива по изменению данных
Я знаю, что мне нужно использовать $watch
, но я не уверен, как его реализовать в моей ситуации.
Я пробовал несколько сценариев, но они не сработали. Ниже моя директива.
Может кто-нибудь, пожалуйста, покажите мне, как добавить в $watch
, чтобы директива обновлялась при изменении данных?
app.directive('googleAnalytics', function(configFactory){
return {
restrict: 'E',
replace: true,
link: function(scope,element,attrs){
configFactory.getconfigs().then(function(configs) {
scope.gid = configs[0].ga_id;
var scriptTag = angular.element(document.createElement("script"));
scriptTag.text("ga('create', '"+scope.gid+"', 'auto');")
element.append(scriptTag);
});
}
};
})
там вы идете ... –
Спасибо Я испачкать ответ как правильный и Я ценю вашу помощь. Поскольку я смотрю на мою проблему больше, кажется, что моя самая большая проблема заключается не в обновлении значения, а при вызове google analytics. Когда файл конфигурации изменяется и обновляется идентификатор GA, мне нужно повторно инициализировать код Google Analytics – Jason