AngularJS$scope不';更新后无法渲染

AngularJS$scope不';更新后无法渲染,angularjs,Angularjs,我有一个控制器,它监听$scope.$on,触发时会显示一个弹出窗口。它100%的时间都是通过其他几个控制器的$rootScope.$broadcast方法工作的。但其中一个永远不会起作用 控制器获取事件,并设置所需的$scope变量,但页面不会更新,即使我触发$scope.$eval()。然后,如果我转到另一个路由,$scope将最终呈现,并且模式将在该路由的顶部弹出。我不知道我是否在angularjs中发现了一个bug,或者我缺少了一些基本的东西。您可能正在angularjs的$scope之

我有一个控制器,它监听
$scope.$on
,触发时会显示一个弹出窗口。它100%的时间都是通过其他几个控制器的
$rootScope.$broadcast
方法工作的。但其中一个永远不会起作用


控制器获取事件,并设置所需的
$scope
变量,但页面不会更新,即使我触发
$scope.$eval()
。然后,如果我转到另一个路由,
$scope
将最终呈现,并且模式将在该路由的顶部弹出。我不知道我是否在angularjs中发现了一个bug,或者我缺少了一些基本的东西。

您可能正在angularjs的
$scope
之外更改
$digest()
。尝试用
$scope.$apply(function(){code making changes})
替换
代码更改
。这样,脏检查将运行并更新所有内容。

我建议使用:

$scope.$evalAsync(function(){//scope changes here})


这样,您就不会遇到问题,比如在已有摘要的情况下尝试调用apply。

您是否可以尝试将问题提取到一个简单的场景中,并在此处发布一些代码?它不需要是您的项目代码,只是一个最小的复制场景。