从摘要循环中删除并恢复范围

有没有办法从摘要循环中删除范围?换句话说,暂停/恢复范围摘要循环?

在我的情况下,我已经载入了所有页面,但并不是全部都可见.所以我想暂停那些是不可见的,以避免无用的处理.我不想使用ng-view $route,我不想/需要深层链接.

我看到了this thread并且到了this fiddle.它可能做的工作,但它是很有创意,而不是非常框架更新友好.

有没有其他解决方案像$scope.suspend()和scope.resume()?还是一个较少侵入的(从框架的角度)?我正在考虑$destroy和$compile循环.

我遇到了同样的问题,我发现一个有趣的解决方案,并不会影响(太多)AngularJS.将其添加到要禁用的范围:
var watchers;

scope.$on('suspend',function () {
  watchers = scope.$$watchers;
  scope.$$watchers = [];
});

scope.$on('resume',function () {
  scope.$$watchers = watchers;
  watchers = null;
});

然后,您可以使用以下范围禁用范围及其子项:scope.$broadcast(‘suspend’)并将其带回范围.$broadcast(‘resume’).

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...