我有以下问题:控制器内有一个函数,该函数决定$scope.name的值
app.controller('myController', ['$scope', function($scope) {
function myFunction() {
$scope.name = 'myName';
}
document.getElementById('my-id').addEventListener("click", myFunction);
}])
由于多种原因,我不能使用ng-单击。更新:由于光擦拭图库和社会分享,我不能使用ng-单击。我想要添加自定义FB共享,如果我使用ng-单击它将关闭照片擦拭打开的图像。请参阅 这里示例。打开图像并单击左上角自定义共享按钮。
注意,即使我在这里使用这个示例,它也不会将我的$scope.name绑定到html。
如果我试着记录它的价值,它就会成为一种魅力。
console.log($scope.name); //will work perfectly
在html中,它将不绑定值:
<div ng-controller="myController">
<button id="my-id">
<p>{{name}}</p>
</button>
</div>
发布于 2016-02-15 01:52:33
对于专题解决方案,问题是普通的事件侦听器将绕过摘要周期。这意味着您的$scope
正在更新,但是Angular不知道它,因为触发更新的事件不在radar的雷达上,因此角不更新模板。解决此问题的(bad)解决方案是使用$scope.$apply
强制触发摘要。
但是,ng-click
,,这是一个非角度的解决方案,如果你解决了的任何问题,你会更好。。
https://stackoverflow.com/questions/35406007
复制相似问题