2015-05-14 37 views
0

我在应用程序中进行登录后定义了一个rootScope变量,奇怪的是该值在未定义的部分中声明。

$rootScope.username = data.nombre; 
$rootScope.userImage = data.photo; 

这些变量声明和包含的价值,因为我已经检查,例如。这个变量是在LoginController中定义的,然后我在HomeCtrl中使用,这个效果很好。但是,在菜单声明中使用它失败并且无法识别。

编辑

在这种情况下,我需要传递变量的值,哪些不能连一个服务(即不工作不就是我想不出办法)我认为$ rootScope会工作。这个状态根据defini没有控制器,我需要关于如何运行驱动程序的指导,以便传递需要显示的变量。

.state('eventmenu', { 
    url: "/event", 
    abstract: true, 
    templateUrl: "event-menu.html" 
}) 
+0

尝试使用$范围,而不是$ rootScope – kanchirk

+2

你注入$ rootScope到控制器? $作用域自然而然,而$ rootScope需要注入 – shershen

+0

您可以通过DI模式在您的控制器中使用rootScope,但是当您在页面中包含部分内容(例如side-bar或sth else)时,您需要通过你自己。 –

回答

2

还有一些代码会有帮助,尤其是您使用$ rootScope的控制器。 对于给定的数据,我可以指出一个常见的错误:没有正确地在控制器中注入$ rootScope。 $ rootScope是一项服务,需要在控制器中注入。 例子:

module.controller('MyController', ['$scope', '$rootScope',function($scope, $rootScope) { 
    ... 
}]); 
+0

感谢您的回答,编辑帖子,并明确表示我没有驱动程序来支持我的横向菜单状态,这是我的错误和我的重大问题,是否需要驾驶员,如果我解决了一切问题。 – NHTorres

+1

谢谢!这帮了我一个代码! – tibelchior

相关问题