Ответ 1
Не видя разметки, я предполагаю, что область MenuSideController является дочерней областью для области, которую вы выбираете.
Пока можно перемещаться по дереву, как это (предполагая, что область, которую мы хотим, является первым ребенком):
var appElement = document.querySelector('[ng-app=theApp]');
var appScope = angular.element(appElement).scope();
var controllerScope = appScope.$$childHead;
console.log(controllerScope.user);
Проще просто выбрать элемент, в котором подключен конкретный контроллер.
Предполагая, что вы используете директиву 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';
});
});