Я в директиве, и я хотел бы сделать объединение $watch
на переменной, которая существует на локальном $scope
и том, что существует на $rootScope
. Это будет выглядеть примерно так:
myapp.directive('cohnbread',
['TEMPLATE_URL', '$rootScope',
function(TEMPLATE_URL, $rootScope) {
return {
templateUrl: TEMPLATE_URL + "cohnbread.html",
scope: { odp: '@' },
link: function(scope, elem, attrs) {
// here I would like to register a callback to fire
// whenever scope.bar or $rootScope.foo fires. Something like:
$watchBoth('scope.bar', '$rootScope.foo', onBarOrFooChange);
}
};
}]);
Есть ли обходной путь, чтобы это произошло?
Отредактировано для предоставления дополнительной информации.
Что вы пытаетесь сделать в $ смотреть? Где вы устанавливаете $ watch? Служба, которая выполняет обратный вызов $ watch как функцию, может работать ... но вы на самом деле не дали нам достаточно информации, чтобы ответить на вопрос (если кто-то не повезет). –
Могу ли я спросить, почему у вас есть две переменные с тем же именем и почему они нуждаются в наблюдении? Если у них действительно есть отдельные цели, тогда назовите их соответственно, если вы не должны заботиться только о более конкретной переменной области –
@LiviuT., У них нет одинакового имени. Это отдельные переменные в отдельных областях. –