首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在全局回调函数中触发angularjs页面刷新?

如何在全局回调函数中触发angularjs页面刷新?
EN

Stack Overflow用户
提问于 2013-06-15 00:59:11
回答 1查看 1.4K关注 0票数 0

我目前正在使用jsonp与google api交互,因此我需要一个全局回调函数。如何在回调函数中触发页面更新?

我试过$timeout$scope.$apply,但它们似乎不起作用。

在我的控制器中,我有类似这样的东西

代码语言:javascript
复制
var App = window.App = angular.module('App', ["App.controllers"]);
angular.module('App.Controllers', [])
    .controller("LoginController", ["$scope", function($scope) {
        window.gplusUserCallback = function(data) {
            $timeout(function() {
                $scope.user = data;
                console.log("gplusUserCallback", $scope.user);
            });
        };
    }]);

但是$scope.user似乎不会触发刷新。有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2013-06-15 01:59:53

如果你想在全局回调被触发后更新你的角度范围,你必须手动更新你的范围。

代码语言:javascript
复制
// If you do have access to your scope via $scope
$scope.$digest();

// If you don't have access to the scope
var element = document.getElementById('dashboard');
// Get the scope for your element where your controller is bound to
var scope = angular.element(element).scope();
scope.$digest();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17113662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档