问题标签 [angularjs-rootscope]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - $scope 值无法在控制器中读取
我不确定这有什么问题,但不知何故无法读取 $scope 的正确值。
这是我在控制器上的代码 -->
rest 服务返回的 JSON 是 -->
我使用 gson.toString(verifyNumber Java class) 将 POJO 转换为 JSON;
但是当我在控制器进行服务调用后尝试检查电话号码的值时,它总是未定义。有人可以帮忙吗?当我将值硬编码为返回的 JSON 时,它工作正常,但不适用于服务。
angularjs - 从 $rootscope angularjs 访问 $scope
我想知道是否有一种方法可以使用 $rootScope 访问 $scopes 变量,这样如果在范围内定义了一个函数,我可以使用 $rootscope 来调用它,或者是否有使用 $scope.var1 定义的变量我可以使用 $rootScope 访问它
javascript - AngularJS:在 ng-repeat 中调用 ng 样式函数时出现 $rootScope:infdig 错误
我正在尝试在将显示在网站主页上的一些短语上构建动画,在随机位置并具有淡入淡出和翻译效果。
我将使用ng -repeat属性中的 ng-style 属性并设置调用 HomeController 中定义的 JavaScript 函数的 ng-style 值来实现这一点。
使用这种方法会导致 Angular 抛出异常:$rootScope:infdig error 10 $digest() 达到了迭代。中止!在最后 5 次迭代中触发的观察者
我阅读了很多关于此的内容,但没有解决方案可以解决我的问题。任何人都可以帮助我吗?
这是 index.html 的一部分:
这是控制器功能:
}
javascript - Angular:在初始化控制器之前重新加载 $rootscope 用户
我正在使用 AngularJS 进行 SPA。登录后,使用令牌创建一个 cookie,并存储一个用户对象,$rootScope.user
这些用户对象可以方便地从各种控制器访问,因为它们是动态加载的。
当我正常使用它并四处导航时,该应用程序工作正常。
当我用 F5 刷新页面时,重新加载 angular 并且模块 run() 方法检查 cookie 是否存在并将用户从服务器重新加载到$rootScope.user
. 然而,在发生这种情况时,另一个控制器已经期望$rootScope.user
有一个用户。
$rootScope.user
在我准备好并加载之前,如何防止控制器初始化。如果可以,当然,检查控制器是否加载了用户$rootScope
。但是如果没有,如何$rootScope
调用控制器来进行一些初始化呢?
这是 app.run() 中的代码:
这是动态加载的控制器中的示例代码:
getOffices()
函数 requires ,由于尚未加载$rootScope.user.OrgID
,因此未找到。$rootScope.user
有任何想法吗?
angularjs - $modal.open() 操作导致表单验证指令未更新
我有一个名为“show-errors”的角度指令,用于表单验证。这将在验证失败时将“has-error”css 类应用于包含 div。这在大多数情况下都非常有效,例如当用户离开输入框(模糊)或当用户单击继续按钮时(这是一个多步骤表单)。我通过广播“show-errors-check-validity”消息来触发所有表单元素的验证。
这是指令:
以下是它在 HTML 中的使用方式:
这一切都非常有效,直到我尝试使用承诺返回触发验证,特别是 $modal.open()。用户可以打开一个模式,允许他们选择先前保存的地址,该地址填充在表单上。当他们这样做时,我希望触发验证。我再次使用“show-errors-check-validity”消息。这会命中指令中的函数,但 angularjs 形式的 $error 值尚未更新。如果我调用 $rootScope.$digest() 我会收到一个错误,说明摘要正在进行中。在 angularjs $scope.shippingAddressForm.zip.$invalid 更新后,我将如何导致指令触发?
下面的 selectAddress() 函数位于包含 shippingAddressForm 和所有带有“show-errors”指令的表单元素的部分的控制器中。
angularjs - 如何在没有 ng-click 的情况下取消 $interval 方法?
实际上,我需要每5 秒从一个控制器$http
发出呼叫以获取数据。
我需要取消其他控制器中的间隔。
代码如下:-
控制器 1(查找所有事件):-
控制器 2:-
在这里,我面临着$interval
通过更新取消来自其他控制器的挑战$rootScope
。
请让我知道想法..帮助将不胜感激。
arrays - 错误:[filter:notarray] 预期的数组但收到了一个对象
您好我正在尝试创建一个基本的全局搜索,它将根据存在的视图(控制器)过滤页面上的结果。
搜索控制器:
查看控制器示例:
博客控制器:
HTML 输出
我使用这篇文章作为参考,并将“searchSite”查询设置为全局对象$rootScope
:
将其转换为数组的原因是因为我收到了错误Error: [filter:notarray] Expected array
,但即使更改了它,我仍然收到同样的错误。
angularjs - $rootScope 事件 preventDefault 不会停止成功的处理程序
我正在使用 ui-router 并为登录页面重定向注册了两个 $stateChangeStart 处理程序。
作为 func1 preventDefault(),我可以看到在 func2 e.defaultPrevented 为真。我只是不明白为什么阻止 func1 中的默认值不会阻止 func2 执行。这种行为是设计使然吗?如果是,“默认”是什么意思?
这是 plunk:http ://plnkr.co/edit/o81NVo?p=preview您可以清除控制台并重新运行以查看日志。
angularjs - 与未明确定义的兄弟控制器通信
你好我有以下情况
我有一个带有方法的控制器,它设置超时并调用模式以及其他操作:
我希望能够从应用程序中的任何其他控制器访问该特定的showModal()方法
所以我有以下选择
$emit(名称,参数);
通过范围层次结构向上调度事件名称,通知已注册的 $rootScope.Scope 侦听器。
使用$emit
我必须将其定义GlobalController
为父级,因为它的“向上”
和:
$广播(名称,参数);
向下调度事件名称到所有子作用域(及其子作用域),通知已注册的 $rootScope.Scope 侦听器。
对于这些解决方案中的任何一个,我必须在应用程序中明确定义控制器(我的意思是在视图上)才能将其用作父级或子级,有没有办法做到这一点,(即使它不是控制器) ?