繁体   English   中英

AngularJS在其他控制器中初始化$ on?

[英]Angularjs initialize $on in other controller?

我有一个带有menuController的普通导航栏,这是父项。

此menuController中的方法'sendData()'具有广播方法和位置调用“ $ location.path('/ page2')”,将我重定向到页面2。.如果我单击,将触发sendData()方法我的导航栏中的链接。

然后,广播方法应该将事件和一些数据发送到第2页上的其他控制器。

在我的page2控制器中是应该接收事件的$ on方法..但是问题是,这时我单击了发送广播的导航栏链接。.第2页上的控制器未初始化。 这意味着$ on方法也未初始化,因此我无法接收该事件。

那我该怎么解决这个问题呢? 在发送广播事件之前,必须初始化page2控制器中的$ on方法。 我怎样才能做到这一点 ? 我使用routeProvider初始化我的控制器。

$routeProvider.when('/page2', {templateUrl: 'partials/page2.html', controller: 'page2Controller'});

你需要做的是创建一个service|factory和初始化或当你第2页初始化,将其拉离的信息设置你的服务的数据service|factory

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM