jqLite 関数 element.html をウォッチャーのリスナーとして直接渡そうとしています。
angular.module('testApp', []).directive('test', function () {
return {
restrict: 'A',
link: function (scope, element, attrs) {
scope.$watch('someVariable', element.html); // <-- Passing the function handle as listener
}
};
});
ただし、これは何らかの理由で機能しないため、回避策としてリスナーを関数でラップしました。
angular.module('testApp', []).directive('test', function () {
return {
restrict: 'A',
link: function (scope, element, attrs) {
scope.$watch('someVariable', function (newValue) {
element.html(newValue);
});
}
};
});
この 2 番目の例は機能します。
最初の例が壊れている理由がわかりません。何か案は?
編集: 言及するのを忘れていましたが、ブラウザはエラーを表示しません。空の要素が表示されるだけです。