【发布时间】:2014-06-09 20:16:59
【问题描述】:
我在我的网站上使用来自Semantic-UI 的弹出组件。
此弹出窗口用于显示来自服务器的错误,因此大多数情况下它是隐藏的。
此弹出窗口附加到我使用ng-show 管理的 div。我需要将我的弹出组件初始化为一个观察者(当我的 div 显示时),因为我的弹出只有在它的附加元素被渲染时才能计算它的位置。
在进行一些测试时,我注意到从 $watch 回调中对 $scope 的修改未应用:
$scope.$watch('shown', function () {
//console.log('The click is detected')
jQuery('#smthg').one('click', function () {
console.log('I come here')
$scope.shownBis = false //
}) //*/
})
对以下内容没有影响:
<p ng-show="shownBis">This should be disappear</p>
(a demo)
我是 Angular 的新手,不了解这种行为,发生了什么以及为什么 Angular 的理念不允许这样做?
【问题讨论】:
标签: javascript angularjs scope angularjs-scope