问题标签 [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 投票
2 回答
3750 浏览

javascript - 如何与 ng-switch 中的全局变量进行比较

我正在使用 AngularJS$rootScope对象来公开一些控制器和视图都需要访问的全局常量:

当我尝试在视图中呈现全局值时,它可以正常工作:

同样,如果我在某个条件下引用全局值,ng-if它也可以工作:

但是,当尝试在一个ng-switch块中使用相同的值进行比较时,它永远不会评估为真。这个 JSFiddle展示了我试图让它工作的尝试。我还尝试将常量值显式引用$rootScope为表达式的成员和表达式(在双花括号内),但没有任何效果。

任何想法我做错了什么?

谢谢,

蒂姆

0 投票
8 回答
385811 浏览

angularjs - 如何在 Angular 中使用 $rootScope 来存储变量?

我如何使用$rootScope将变量存储在我想稍后在另一个控制器中访问的控制器中?例如:

我该怎么做?

0 投票
2 回答
18598 浏览

angularjs - 如何在 angularjs 中访问 $rootscope 变量?

我想将一些数据分配给在页面加载时初始化的全局变量(可能是 $rootscope)。然后我想从所有控制器访问这些数据。我该怎么做?

0 投票
2 回答
21363 浏览

angularjs - 为什么我不能使用 $rootScope 而不是 $scope?

HTML 文件是这样的:

我写了一个控制器:

但它在警报框中显示 url 为:/search?fname=&lname= 但是当我在任何地方使用 $scope 而不是 $rootScope 时,它​​工作正常(警报窗口正确显示 url /search?fname=john&lname=player)。需要帮助以详细了解 $rootScope。谢谢。

0 投票
0 回答
122 浏览

angularjs - angularjs:双重改变rootscope

我有类似的东西

那个«true»隐藏了元素的地方。这些元素是标题中的导航链接。我根据我所在的页面交换它们,从相应的控制器调用 empty_nav() 。问题是 $rootScope。如果我在函数内执行 console.log() ,则每个项目都会正确获取值,包括选定的值。但在具体情况下(浏览每一页),它只隐藏所有项目,但之后指示的项目不会淡入。

难道我做错了什么?

PD:我也在考虑只有一个项目并将链接和文本传递给它....而不是有这么多项目:/

0 投票
2 回答
4003 浏览

angularjs - Angular - 我可以广播来自 Angular 应用程序外部的消息吗?

我有一个场景,我需要非角度代码(在本例中为 Facebook 和 Twitter JS sdk)来广播角度控制器可以监听的事件。为什么?初始页面加载后,我通过 AJAX 加载和修改页面中的内容。内容附有多个喜欢/推文按钮(如博客/聚合器的首页)。我想在 Facebook 的“赞”按钮或 Twitter 的“分享”按钮上发生点击时添加事件挂钩 - 页面中有一些,每当获取新内容时,每个都会发生变化(同样,通过 ajax )。

现在,SDK 以不同的方式处理这个问题:

推特

Facebook

一些控制器

这个想法是绑定这些事件处理程序一次,然后在相关控制器中处理广播消息,即使这些控制器在获取新内容时重新创建。

所以基本上,我正在寻找的是一种连接现有和已经初始化的角度应用程序$rootScope$broadcast消息的方法,尽管它不是应用程序的一部分。希望这是有道理的。谢谢。

0 投票
2 回答
2781 浏览

javascript - AngularJS 数据服务与 $rootScope 事件

您能否解释一下数据服务的使用与 $rootScope 事件的使用。

我有一个提供编辑功能的说分支列表。单击编辑按钮时,我正在使用根范围广播一个事件

EditBranch事件由编辑/创建控制器捕获,该控制器获取分支详细信息并以适当的编辑格式呈现它。

其他功能是我正在添加一个新分支,我希望它在添加后立即列在现有分支列表中。使用的代码如下

以这种方式使用 $rootScope 是否正确。或者我应该shredService在创建它之后创建一个用于共享分支数据。

0 投票
1 回答
7012 浏览

javascript - angularjs $rootScope.watch 不工作

我是 angularjs 的新手。我正在努力学习$watch财产。这是我的plunker

rootScope.$watch属性仅在页面加载时执行,而不是在文本更改事件中执行。但它适用于$scope.$watch.

0 投票
1 回答
13143 浏览

angularjs - 如何删除 angularjs 中的 $rootScope 变量?

在控制器中,我定义了$rootScope.tableformate变量以在弹出窗口中填充数据。

填充弹出数据后$rootScope.tableformate不使用。如何删除这个变量?

0 投票
1 回答
802 浏览

angularjs - 设置初始 $rootScope 默认值似乎不起作用

我希望很少有与 UI 相关的全局变量(即打开菜单状态)。我决定把它们放进去,$rootScope这样它们总是可以访问的。

这是我写的代码:

我故意使用angular.extend, 以确保保留对同一对象的连续操作。而且我认为它也比为任何对象一个一个地添加多个属性更干净和安全。

问题

上面的代码没有做任何事情。当我运行我的应用程序并通过调用检查根范围时:

我得到undefined直到其中的某些属性被我的应用程序上的指令ui操纵。ng-click只有这样我才能ui得到一个引用......但它仍然不是我在run()函数中定义的那个,而是ng-click指令根据表达式生成的角度生成的对象属性。

我究竟做错了什么?