问题标签 [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.

0 投票
6 回答
2580 浏览

angularjs - 使用 $rootscope 显示和隐藏

我的index.html模板中有一个搜索栏,我需要在某些页面上隐藏它。我正在使用ui-router$state

我可以完成这项工作的唯一方法是注入$rootscope我所有的控制器,或者在需要的地方打开ng-hide: truefalse关闭它们。(我真的只需要隐藏在 1 或 2 页上)

我认为这不是正确的方法,因为我所有的控制器现在都依赖并注入到$rootscope.

还有另一种方法可以做到这一点吗?

0 投票
1 回答
159 浏览

angularjs - AngularJS $rootScope 不喜欢字符串中的破折号

我想在 $rootScope 中存储一个日期字符串,但是一旦我这样做就会引发无限的消化错误。

为什么我不能这样做?

编辑:

问题

我在视图中使用 $rootScope.lastWeek 的日期选择器,它有一个 $watch 触发无限消化错误。我只是使 $scope 变量等于我的 rootscope 变量,并在视图中使用它。

0 投票
1 回答
403 浏览

angularjs - 如果条件在 ui-router 中匹配,如何更改 url 的一部分?

我的 $stateProvider 中有两种状态,分别是经过身份验证的用户访问 url 和公共访问 url。

我在公共访问中有某种 url,问题是我需要阻止这些 url 访问经过身份验证的用户,并且需要用另一个更改 url。

示例假设 http://localhost:3000/#/pjobadd/1是公共访问 url,如果经过身份验证的用户将访问此 url,我需要更改为http://localhost:3000/#/jobadd/1

我正在尝试采用以下解决方案

我在状态提供程序中附加了参数,例如

并在 app.js 中使用requireChange如下

我需要附加 url 传递的参数和 $state.go() 也没有重定向到提到的 url 的问题。我认为这不是有效的方法。

任何人都可以建议一种方法吗???

0 投票
2 回答
425 浏览

angularjs - Angular $rootscope.$broadcast 在服务中的正确使用

根据我的阅读,除非绝对必要,否则似乎不建议使用 $rootScope.$broadcast 。我在服务中使用它来通知控制器变量已更改。这是不正确的吗?有更好的方法吗?我应该改用 watch 吗(即使变量只在用户交互时发生变化)?

服务:

// 在要通知的控制器中:

// 并且来自一个单独的指令控制器:

所以这对我来说很好,但我不知道这是否是我应该这样做的方式。感谢帮助!

0 投票
3 回答
733 浏览

javascript - 当工厂可以做同样的事情时,为什么要使用 $rootScope 在控制器之间共享数据?

我的理解是 $rootScope 是某种全局变量,它允许它在控制器之间共享。工厂也可以做同样的事情。那么,为什么不使用工厂呢?什么时候应该使用 $rootScope 什么时候应该使用 factory ,因为它们的用途几乎相同?

0 投票
0 回答
163 浏览

javascript - 将此 $rootScope 转换为 http 基本身份验证 angularjs 中使用的工厂

我正在使用这个例子来构建一个带有 angularjs 的 HTTP Basic 身份验证应用程序。 http://jasonwatmore.com/post/2014/05/26/AngularJS-Basic-HTTP-Authentication-Example.aspx

作者使用 $rootScope 来存储用户名和密码。我确实想将其转换为使用工厂,特别是当示例已经使用工厂时。

以下是相关代码;

0 投票
1 回答
157 浏览

angularjs - $stateChangeSuccess 后隐藏加载程序图标的延迟

我知道有很多关于这个的文章,但我找不到这个特定问题的解决方案。更改状态时,我希望隐藏当前状态并显示微调器$stateChangeStart,并在解决新状态时隐藏微调器$stateChangeSuccess。目前,我通过在 $rootScope 中将 showSpinner 值设置为 true/false 来处理这个问题,它反映在视图中,就像这样......

意见:

截至目前 $stateChangeStart 正在做我想做的事,但是在 $stateChangeSuccess 上解决了新视图并且内容已经呈现之后,移除微调器有一个很好的延迟。无法真正弄清楚为什么会这样。我将不胜感激任何帮助。

0 投票
0 回答
65 浏览

javascript - 使用 Jasmine 单元测试测试承诺时出错

我一直在用 Jasmine 编写一些单元测试,并且我有一个函数可以在我自己的工厂中使用的服务中返回一个承诺。我正在执行以下步骤:

我做了一些调试,它通过了我的 promise 函数,但是在完成最后一行之后,它进入 StateBrowser 并抛出这个错误:Could find state for path.: $root.

0 投票
3 回答
1595 浏览

angularjs - 如何在同一控制器中将数组从一个视图传递到另一个视图

我只是 angularjs 的新手。我的应用程序的一个视图中有一个表单,它显示在我的另一个视图中。该应用程序只有一个控制器。用户可以在表单中输入应该显示在另一个视图上的字段。代码看起来像这样。

你能告诉我为什么单击提交按钮后数组没有在第二页的视图上更新吗?

0 投票
3 回答
74 浏览

angularjs - AngularJS代码理解

有人可以帮我解释一下AngularJS中的这段代码吗

  1. 什么是 $new 运营商在这里服务
  2. 什么是!0?
  3. How , 用于分隔两条语句并将其分配给左侧的一个变量