簡體   English   中英

如何從Angular中的嵌套控制器調用函數?

[英]How to invoke functions from nested controllers in Angular?

在我的角度應用程序中,我想從嵌套控制器中調用一個函數。 例如,下面我想在當前的容器視圖中,它有自己的containerCtrl可以說,它能夠按下該按鈕,但是調用在Ctrl1控制器中定義的名為“ buttonPress”的函數。 目前,我無法執行此操作,因為它尚未在containerCtrl范圍內定義。

HTML:

<div id="container">
    <button ng-click="Ctrl1.buttonPress()">I WANT TO PRESS THIS</button>
    <div ng-controller='Ctrl1'>
    <div ng-controller='Ctrl2'>
</div>

有什么方法可以調用該功能嗎?

所以您想從父控制器中調用子控制器中的buttonPress()方法,在您的情況下是從containerCtrlCtrl1 您只能從子控制器調用父控制器的方法。

為什么要從父控制器調用它?為什么不直接將其定義為“父”,然后再從父控制器或任何子控制器中調用它。

一種方法是可以使用發射廣播

查看此鏈接以了解有關發射廣播的更多信息

使用$ scope。$ emit和$ scope。$ on

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM