因为项目需要ng进行二次开发, 现在有个疑问想请教下:
A、B、C三个组件,A与C同级,B为C的子组件,现在A组件想直接调用B组件内的方法
--A
--C
----B
将B内的方法封装为通用类Service应该是可以的,但想请问有没有什么更直接的方法,比如做一个锚点直接可以使用ng-click='B.func()'?
NG玩的不是很溜,所以在这里请教下各位大牛,感谢了!
因为项目需要ng进行二次开发, 现在有个疑问想请教下:
A、B、C三个组件,A与C同级,B为C的子组件,现在A组件想直接调用B组件内的方法
--A
--C
----B
将B内的方法封装为通用类Service应该是可以的,但想请问有没有什么更直接的方法,比如做一个锚点直接可以使用ng-click='B.func()'?
NG玩的不是很溜,所以在这里请教下各位大牛,感谢了!
首先ng1里面是叫指令的,$scope.$emit配合$on可以实现子控制器向父控制器向上发出一个通知,$scope..$broadcast则相反,ng2里面将指令改为组件了,父组件可以直接调用子组件的方法
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.4k 阅读✓ 已解决
6 回答1.4k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
6 回答1.2k 阅读
首先,是否可以考虑把 B 中的函数放到 A 中,这样, A 和 B 都能调用。
或者,你也可以考虑事件通知,在 A 中
$scope.$broadcast('someEventName', some_params)
广播一个事件,在 B 中 使用$scope.$on('someEventName', function (event, params) {});