问题标签 [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.
javascript - $rootScope 并将数据从控制器传递到服务
我正在使用 angular js 并且有一个看起来像这样的控制器
和一个看起来像这样的服务(在另一个文件中)
为了确保每个人都正确地从服务连接到控制器,在我的控制器内部对“test()”的第一次调用会在警报框中产生所需的输出。但是,对于下一个功能,现在应该警告“4”,而不是警告“未定义”。
我如何使用 $rootScope 或其他东西来将范围变量用于我的服务。
javascript - $rootScope 没有改变内容....我的错误是什么?
我遇到了 $rootScope 的问题。我正在更改“按钮”单击事件中的值,但指令中没有更改。
HTML页面显示“TEST”开始,在按钮单击时,我希望更改为“CLICKED”。错误是什么?在我的代码中,请帮忙。
javascript - 更新 $rootScope.$broadcast
如何使用新值更新 $rootScope.$broadcast?
考虑这段代码:
这是我的控制器:
这是我的html:
这几乎可以工作。当我进行 ajax 调用时,mapInfo 会更新并在页面上打印出数据。但是当我不进行 ajax 调用时,fish 的值不会在页面上打印出来。我可以看到 $rootScope 正在被值 fisk:console.log($scope.mapInfo) 更新,但它没有被打印出来。
angularjs - 如何使用角度服务运行函数并将结果分配给 $rootScope
出于某种原因,我在思考 Angular 逻辑时遇到了问题,但我决心理解这一点。
我试图在应用程序启动时运行一个函数,该函数循环一个对象并全局存储结果。我正在尝试通过服务来做到这一点。
第一个问题:我应该使用 .run() 来初始化它还是在第一条路线的控制器中?
这是我的代码:
我似乎无法做到这一点。每次我在控制器中记录 $rootScope.structure 时,它都是未定义的。做这样的事情的最好方法是什么?$scope.watch? 承诺?
angularjs - 控制器可以在 Angular 的 $rootScope 中创建任意属性吗
控制器在 Angular 中做这样的事情是否合法?
或者
angularjs - Angular $rootScope.$broadcast() event caught twice in controller
Broadcating event on button click :-
And catching event in another controller :-
But it caught twice even though it fired only once. Why is that?
angularjs - angularjs中的重定向状态
这是状态配置:
nv
及其子状态将没有物理视图或控制器。
我希望它们充当调用某些功能的链接。
调用注销方法的服务:
然后是一个用于注销的按钮/链接:
我想要发生的是,当状态nv.logout
被触发时,
$grabhutAccountService.logoutUser()
必须调用并且必须重定向到'account.main'
这是我到目前为止所做的:
我尝试在nv.logout
服务被调用,但状态没有重定向。所以我尝试了另一种方法。我添加了一个控制器:
但$stateChangeSuccess
不是被解雇。
所以我尝试使用rootScope:
并像这样使用它:
<a ng-click="$root.logout()" class="button icon icon ion-log-out button-large" menu-close></a>
这工作正常。但我很担心,因为(AFAIK)rootScope 会加载更多数据,这可能会导致运行速度变慢。
此外,每当我需要像上面这样的某种功能时,我都必须再次在 rootScope 中附加功能。
而且我认为这不是一个好方法。顺便说一句,我正在 phonegap 中构建它,这就是内存使用如此重要的原因。
javascript - $watch 防止 rootScope 更改
我试图让一些 JSON 数据在控制器之间传递。我得到了一些 JSON $http
,用延迟设置我的回调$q
并将结果分配给我的$rootScope.productList
. 一切正常,但是当我添加$watch
on 时$rootScope.productList
,它返回给我undefined。您对此有任何解决方案吗?
我$watch
在控制器内部:
在另一个控制器中,我得到了我的数据。我用$http
超时替换了 以重现行为。
http://plnkr.co/edit/7wWxXgq5BARYgm0tYVgf
我尝试使用 a $watch
,但我会采取任何解决方法。
javascript - Angularjs - 广播事件被双重触发
我有这个简单的代码:
广播联系人:addNewContact 实际上是在控制台中放了 2 次“哟”。
我不明白为什么它会被两次发射而不是只有 1 次。
任何帮助表示赞赏,谢谢
angularjs - AngularJS - 如何修改 $rootScope 中的变量?
我有一个可能非常愚蠢的问题,但是如何在 Angular 的 $rootScope 中修改变量?我有一个滑入式侧边栏,我想在有人单击缩略图时更改其内容,并且我想出了处理侧边栏中数据来自哪里/侧边栏可见性的最简单方法是全局值, 或在 $rootScope. 我试图让一切尽可能简单,但我只是不知道如何处理修改全局变量。
我围绕这个的角度代码是:
并且连接的 HTML 是
从本质上讲,我试图做到这一点,以便当您单击缩略图时,它将 currentUrl 值从“visual/design/1/”更改为他们单击的任何内容(例如,“music/solo/2”或其他)然后将 detail_visible 的值更改为 false,以便我侧边栏上的类切换,我得到一个不错的小滑入,通过 ng-include 加载新内容,我比我想象的更喜欢它一千倍我会。我已经为此努力了大约三个小时,只要我有机会就打破这个应用程序上的所有其他内容。我在这里搞砸什么?或者,有没有更好的方法来做到这一点?
我使用全局变量的原因是我在多个控制器中有多个缩略图,并且我希望每个都能够动态更改我的 ng-include 中的 URL。