从 Angular 表达式访问窗口

2024-01-11

根据开发者指南 http://docs.angularjs.org/guide/expression我应该能够从 Angular 表达式内部访问浏览器窗口$window.

与 JavaScript 不同,JavaScript 的名称默认为全局窗口属性,而 Angular 表达式必须使用 $window 来引用全局窗口对象。例如,如果您想在表达式中调用在 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'

控制器有$window作为依赖。我可以从表达式访问范围变量和其他服务,但不能$window, so $scope.$eval($window.alert())也不行。

我在这里缺少什么?


$scope.$eval评估针对$scope,因此仅当您将 $window 服务分配给作用域成员时,您的评估才会起作用:

$scope.$window = $window;  
console.log($scope.$eval('$window'));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 Angular 表达式访问窗口 的相关文章

随机推荐

  • linux命令可以向json文件添加新的字段键值对

    我的目录中有一个 json 文件 我需要替换键的值 添加新的值键对 json 文件的格式如下 Name username Actionchecked Enablecheck true savecheck true User user pas
  • Watson Conversation Dialogue,如何使用槽保存用户输入

    在我的 Watson 对话中 我尝试使用插槽读取用户输入 我的要求是提示用户输入问题描述并将其保存在名为 issues description 的变量中 但在槽中 沃森在将其保存到变量之前检查意图或实体 就我而言 我已经提出了要检查的意图
  • Android 屏幕尺寸和屏幕密度图像选择

    我在尝试在不同尺寸的设备上使用多个水平图像时遇到问题 我有 7 个独立的评级栏 每个评级栏都使用不同的自定义图像 我已经缩放了所有图像并将它们放入各自的 dpi 可绘制文件夹中 我遇到的问题是 在 xlarge mdpi 屏幕 下图左上角
  • 如何在 SQL Server Management Studio 中测试表值函数?

    我从未使用过数据库函数 但我当前的项目需要它 我需要将一个常见的 sql 查询放入一个函数中 这样我们就不必在代码中输入数百次 我已经创建了该功能 但我不知道如何使用它 这是函数代码 USE DB NAME GO SET ANSI NULL
  • 如何创建工具提示? [复制]

    这个问题在这里已经有答案了 我想为工具提示创建一个自定义 CSS 类 它将包含长度超过 25 30 的字符串 通常这么长的文本不适合工具提示文本区域 无论如何 有没有办法做到这一点工具提示 ui bootstrap tooltip http
  • 和/或 Jekyll 上的 where_exp 表达式

    我正在尝试使用where exp根据两个类别过滤 Jekyll 页面or操作员 assign sortedPages site pages sort date reverse where exp page page categories c
  • Jenkins 管道:构建步骤的返回值

    在 Jenkins 的集成管道中 我使用以下命令并行触发不同的构建构建步骤 https jenkins io doc pipeline steps pipeline build step 如下 stage trigger all build
  • 如何在迁移触发器中设置 Cognito 组

    我目前正在使用 Cognito 触发器 用户迁移 构建从 AWS 用户池到另一个用户池的迁移解决方案 我想在迁移期间设置一个组 但我无法执行此操作 因为在整个上下文完成之前尚未创建用户 我该如何解决这个问题 我不想创建 PostAuth l
  • 如何在 ASP.NET Core 2.0 中实现 machineKey

    在 ASP NET 非核心 中 我通常会在 web config 中添加一个 machineKey 以便我可以在本地计算机而不是服务器上执行一些功能 以便数据库 回调操作将使用相同的密钥 例如
  • 查找仅在 R 中的一行中出现的变量

    使用 BASE R 我想知道如何回答以下问题 有没有什么价值X or Y仅发生在一行中而不发生在其他行中 如果是 请出示我的期望的输出 below f lt data frame id c rep AA 4 rep BB 2 rep CC
  • (Symfony 4) 如何从 PHP 代码中访问 Liip Imagine 包?

    我希望能够上传一个文件 并从中创建 3 个缩略图 并将所有内容存储在 S3 服务器上 我的 liip LiipImagineBundle 设置如下 liip 想象 configure resolvers resolvers setup th
  • CMake 中的 Makefile 等效项

    我刚刚开始使用CMake 已经不到一周了 我已经编写了一个 Makefile 并且正在尝试在 CMake 中编写其等效项 我不知道应该在 CMake 中为给定 Makefile 中的每个语句使用哪些命令 我该如何开始 有什么地方可以找到这方
  • Django 结合 __unaccent 和 __search 查找

    所以我正在尝试使用 unaccent and search在同一模型过滤器中 但这样做时收到错误 我正在尝试使用术语 Pokemon 与术语 Pok mon 匹配来创建一个过滤器 注意 Game objects filter title u
  • JPA 2.1 中的 @ConstructorResult 映射无法与 Hibernate 4.3.5.Final 一起正常工作

    我尝试将本机查询映射到非实体类 我有以下实体 Entity Table name Groups SqlResultSetMapping name groupList classes ConstructorResult targetClass
  • 使用节点实现重新填充堆栈

    在我把它全部取下来打印出来后 我很难重新填充堆栈 我正在使用节点实现 所以我认为这个事实让我感到困惑 任何建议将不胜感激 谢谢 这是我原来的 stack print Function to print Gumball info field
  • 使用隐式/显式转换运算符是否违反单一职责模式而支持 DRY?

    我需要在这两个类之间进行转换 并且想要保持 DRY 但不违反单一职责模式 public class Person public string Name get set public int ID get set public class P
  • 模块内部的参考控制器

    我在模块内定义了一个控制器 angular module myModule controller MyCtrl function scope scope property myproperty 部分内容包含在主 html 中 如下所示 di
  • 詹金斯第一次访问时非常慢

    清晨第一次访问詹金斯非常慢 如果我们重新启动 Jenkins 服务器 也会发生这种情况 因此第一个访问 jenkins 的开发人员有时需要等待长达 3 分钟 我们认为这是构建负载的问题 因此 我们将所有构建工作转移给詹金斯奴隶 但问题并没有
  • 与多个项目共享 nlog 配置以及正确的线程安全方式来全部写入同一日志文件?

    我的程序由一个 EXE 和 6 个 DLL 组成 当然每个人都引用每个人 我目前有一个粗略的静态日志记录类 Logger 它位于它自己的 DLL Logger dll 中 我将其添加为每个的引用我的项目并使用 但我没有重新发明轮子 而是希望
  • 从 Angular 表达式访问窗口

    根据开发者指南 http docs angularjs org guide expression我应该能够从 Angular 表达式内部访问浏览器窗口 window 与 JavaScript 不同 JavaScript 的名称默认为全局窗口