我有一个变量$scope.liking
。只要somone点击了一个类似按钮,它就会更新,从而触发监听器FB.Event.subscribe
。
controller('LikeCtrl', ['$scope', '$window', function($scope, $window) {
var page_like_callback = function(url, html_element) {
$scope.liking = true;
console.log($scope);
};
console.log($scope);
FB.Event.subscribe('edge.create', page_like_callback);
}]);
在我的模板中,我有一个
<p>{{liking}}</p>
FB.Event.subscribe
触发时不会更新。我可以看到console.log
范围已更新。我可以踢它来上传模板或以某种方式更改代码吗?
答案 0 :(得分:2)
回调是在Angular控件之外执行的。您需要在$scope
的上下文中显式计算表达式。您可以使用$apply
:
var page_like_callback = function(url, html_element) {
$scope.$apply(function () {
$scope.liking = true;
});
};