如何以角度访问儿童控制器?
我使用ng-include包括各种子视图,每个子视图都有自己的控制器。我希望能够指定一个函数,该函数接受一个字符串(来自一个文本框,如果你在意的话),并根据视图来决定它是否应该可见。例如,如果我在文本框中键入“工具”,我希望那些与工具无关的视图消失。理想情况下,每个视图(及其控制器)将指定其自己的过滤器功能。如何以角度访问儿童控制器?
我可以访问视图中的控制器并调用其功能之一吗?我假设在视图的控制器中指定的函数将相关的代码保存在一起很有用。
您不需要访问子控制器来控制子视图的行为。
您可以将控制器作为父控制器,并且所有子视图的控制器都是该控制器的子控件。然后所有的子控制器都可以访问父控制器的范围数据。然后在父控制器的文本输入中使用ng-show,ng-hide,ng-if或其他内容。
因此,而不是父控制器隐藏孩子,孩子们看着过滤器的价值,并隐藏自己? – whiterook6 2015-02-11 05:37:40
是的。另一种解决方案是在父控制器中使用事件广播,并在子控制器中监听事件并进行更新。 – Mavlarn 2015-02-13 06:22:41
我建议你应该问的问题是如何将服务注入到控制器中,如果函数在工厂中,则只需将工厂注入任何控制器以访问函数。这里的演示示例http://stackoverflow.com/a/25418541/1803298 – cheekybastard 2015-02-11 02:18:33