gpt4 book ai didi

javascript - AngularJS $广播和隔离范围

转载 作者:行者123 更新时间:2023-11-29 19:39:40 27 4
gpt4 key购买 nike

所以我有两个指令 splitterpane 可以像这样使用:

<splitter>
<pane></pane>
<pane></pane>
</splitter>
<splitter>
</splitter>

我希望它们都具有独立或继承的作用域。但是我也希望能够在它们之间进行 $broadcast (或等效),这样如果我在一个指令的范围内进行 $broadcast ,相同的事件将被触发所有正在监听但不是它的父级或兄弟级的嵌套指令(此处没有 $rootScope)。

人们会怎么做呢?我的解决方案必须对 future 友好,因为我将向混合中添加更多指令,这些指令也会监听此事件。

最佳答案

要进行指令间通信,最好的方法是使用父指令 Controller 并在 this 中公开方法。

然后你只需要在你的 child 指令中要求它(require: '^splitter')并且父 Controller 将作为你的第四个参数注入(inject) link功能。

更多信息,您可以查看关于Creating Directives that Communicate的官方文档.

关于javascript - AngularJS $广播和隔离范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23892235/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com