我有一个使用angularjs的离子应用程序。在角度控制器内部,我无法使用$scope
打印console.log($scope)
。但是我可以访问像$scope.var
这样的变量。
angular.module('starter.controllers', ['starter.services','ngCordova'])
.controller('SettingCtrl', function($scope){
console.log('SettingCtrl ');
console.log($scope);
console.log('end');
}
输出是
1 453753 log SettingCtrl
2 453760 log end
它完全忽略了引用$ scope的行。
我在这里想念什么?
更新:
我修改并为$ scope分配了一些值,例如
console.log('SettingCtrl ');
$scope.var = 1;
console.log($scope.var);
console.dir($scope);
console.log('end');
并为此输出
1 332968 log SettingCtrl
2 332970 log 1
3 332972 log end
最佳答案
在浏览器检查器中,这将起作用,但是如果您启动终端程序后正在查看终端上的日志,$ ionic run
那么它可能会忽略任何console.dir
。要解决此问题,您可以console.log(JSON.stringify(object))
,但是我不确定它是否可以在$scope
对象上使用,因为由于循环引用,它可能无法字符串化