tam*_*cun 5 window-object angularjs angularjs-scope
根据开发人员指南,我应该能够从Angular表达式中访问浏览器窗口$window.
与JavaScript不同,其中names默认为全局窗口属性,Angular表达式必须使用$ window来引用全局窗口对象.例如,如果要调用窗口中定义的alert(),则必须在表达式中使用$ window.alert().
但是我似乎无法$window从使用的表达式访问$scope.$eval.以下是我在登录控制台时获得的一些输出:
console.log($window); // the Window object as expected
console.log($scope.$eval('$window')); // undefined
console.log($scope.$eval('1+1')); // 2
console.log($scope.$eval('scopeVar')); // 'abc'
Run Code Online (Sandbox Code Playgroud)
控制器具有$window依赖性.我可以从表达式访问范围变量和其他服务但不能$window,因此$scope.$eval($window.alert())也不起作用.
我在这里错过了什么?
$scope.$eval评估$scope,因此只有在为范围成员分配$ window服务时,您的评估才会起作用:
$scope.$window = $window;
console.log($scope.$eval('$window'));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6272 次 |
| 最近记录: |