为了账号安全,请及时绑定邮箱和手机立即绑定

请问在angular 两个控制器中方法怎么互相调用?

请问在angular 两个控制器中方法怎么互相调用?

一只萌萌小番薯 2019-09-02 09:05:50
angular 两个控制器中方法怎么互相调用
查看完整描述

4 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

静态方法中不能调用非静态属性 要么将 要调用的属性修改为静态 要么创建对象后调用,方法如下: static void Main() { Program p=new Program(); p.a="aaa";p.b="bbb"; }控制器里面的方法怎么互相调用

查看完整回答
反对 回复 2019-09-07
?
森栏

TA贡献1810条经验 获得超5个赞

指令和控制器的交互 指令复用 滑动加载 上面的代码平淡无奇,有个控制器有个指令(loader),下面可以看到我们通过 directive创建了这个指令,并且我们通过link的方法给他赋值鼠标事件(mouseenter)。angularjs怎么实现不同控制器下的div绑定

查看完整回答
反对 回复 2019-09-07
?
蓝山帝景

TA贡献1843条经验 获得超7个赞

有时需要两个controller相互通信,我学习到的两个controller之间的通信是:父级controller通过广播向子controller传递信息,而子controller通过冒泡向父级controller传递信息。假如不是两个controller的话,可以构造一个父级controller,然后通过它来广播信息。还有一种是通过工厂模式来注册一个服务,通过服务来传递信息。而所说的冒泡和广播就是angularjs的$emit和$broadcast,通过这两种方法的话,要绑定事件,才可以进行广播或者冒泡。
下面这种是$emit和$broadcast

假如是父级controller和子controller的通信的话,也可以用$watch()来监控你要的信息。不过只能子级的监控父级。$watch("tag",function(){});tag是你要监控的变量了。

查看完整回答
反对 回复 2019-09-07
?
繁星coding

TA贡献1797条经验 获得超4个赞

举例:
.controller('a',['scope',$rootScope',function($scope,$rootScope){
$rootScope.u=$scope.username1
}]);
.controller('b',['scope',$rootScope',function($scope,$rootScope){
$scope.username2=$rootScope.u
}]);
说明:通过父子作用域来传递,a中的username1通过子作用域传递给父作用域$rootScope,然后在b中通过父作用域$rootScope传递给b中的username2,从而实现两个controller之间的数据传递



查看完整回答
反对 回复 2019-09-07
  • 4 回答
  • 0 关注
  • 1467 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信