2016-08-11 257 views
0

我有這樣一個DOM:Angularjs嵌套NG控制器

<md-content class="timelineContainer" ng-controller="modelCtrl" layout-padding flex> 
...... 
    <div ng-controller="objectCtrl"> 
     <md-button aria-label="Favorite model" layout="row" layout-align="center center"> 
      <ng-md-icon icon="favorite" size="28" aria-label="Favorite model"></ng-md-icon>ADD TO FAVORITES 
     </md-button> 
    </div> 
...... 
</md-content> 

我認爲,從內部件控制器(在這種情況下objectCtrl),可以得到訪問父控制器(在這種情況下modelCtrl )通過$範圍,但不是。

完成此操作的方法是什麼?

+0

你到底在做什麼? – developer033

+0

從父控制器獲取信息。 – domoindal

+0

所以你想訪問父控制器的變量,例如? – developer033

回答

0

您是否嘗試添加「$ parent」。在視圖中的變量之前

+0

我通過控制檯console.log($ scope。$ parent)從objectCtrl中顯示,但沒有看到modelCtrl的任何變量。 – domoindal

+0

不,你應該在視圖中使用 – DMCISSOKHO

+0

好吧,我現在看到它。它在$ scope。$ parent。$ parent。中。我不明白爲什麼增加了水平。 – domoindal

0

您絕對可以從子控制器訪問父控制器。 Angular $scope遵循prototypal inheritance模式,如果您不明白它的工作原理,會導致很多混淆。

因爲您的示例不完整,所以無法引導您。正如其他答案所述,您可能會在$parent中找到它。