AngularJS访问控制器$范围从外部
var theApp = angular.module('theApp', []); var app = angular.module('theApp', ['ui.bootstrap']); app.controller('MenuSideController', ['$scope','SnazzyService','$modal','$log', function($scope, SnazzyService, $modal, $log) { $scope.user.zoomlvl = '2'; }]);  我有上面的控制器,它设置$scope ,我只能从里面访问值。 
 但我看到的地方使用下面我将能够访问$scope但是当我console.log($scope) $scope.user.zoomlvl它不存在。 
 我不知道如何访问MenuSideController $范围,并用valZoomvariables更新。 
 var appElement = document.querySelector('[ng-app=theApp]'); var $scope = angular.element(appElement).scope(); console.log($scope); $scope.$apply(function() { $scope.user.zoomlvl = valZoom; }); 
	
没有看到标记,我想MenuSideController的范围是你select范围的子范围。
虽然可以像这样遍历树(假设我们想要的范围是第一个孩子):
 var appElement = document.querySelector('[ng-app=theApp]'); var appScope = angular.element(appElement).scope(); var controllerScope = appScope.$$childHead; console.log(controllerScope.user); 
只需select特定控制器所在的元素就简单多了。
 假设你正在使用ng-controller指令: 
 <body ng-controller="MenuSideController"></body> 
改为:
 var controllerElement = document.querySelector('body'); var controllerScope = angular.element(controllerElement).scope(); console.log(controllerScope.user); 
演示: http : //plnkr.co/edit/WVNDG9sgYgoWaNlrNCVC?p=preview
 angular.element(document).ready(function() { var appElement = document.querySelector('[ng-app=theApp]'); var appScope = angular.element(appElement).scope(); console.log('Traversing from appScope to controllerScope:', appScope.$$childHead.user); var controllerElement = document.querySelector('body'); var controllerScope = angular.element(controllerElement).scope(); console.log('Directly from controllerScope:', controllerScope.user); controllerScope.$apply(function() { controllerScope.user.zoomlvl = '10'; }); }); 
- AngularJS中的$ scope是什么?
- ScrollTo在AngularJS中的function
- unit testing有依赖关系的AngularJS工厂
- 如何用多个参数在angularjs中发送POST?
- 在angularjs中,我们有ng-disabled指令,为什么ng-enabled指令不是由框架提供的,因为我们有ng-show和ng-hide
- AngularJS $ http-post – 将二进制文件转换为excel文件并下载
- 在AngularJs中设置dynamic范围variables – <some_string>
- 如何使用angularjs检查表单有效性?
- 没有包含<form>的AngularJS <input>validation