2016-05-21 232 views
0

我在AngularJS發起了我,我有一個疑問初學者。angularjs控制器和模塊

我已經定義了我的主模塊,並在屏幕上顯示了幾個單元。我碰巧有另一個模塊,但不知道如何將它放在主模塊中,因爲如果我把它作爲依賴項,那麼視圖會給我錯誤。我也懷疑如何在HTML中應用各種ngcontroller,因爲同樣的事情發生,如果我把主要一切工作正常......當我把第二個模塊,並沒有工作......我想這是依賴。

我離開我的代碼,你會更好地理解。非常感謝你。

JS code -------------------------------------------- --------

var app = angular.module('frutariaApp', 
    ['ngMaterial', 'ngMessages']); 
app.controller('AppCtrl', function($scope, $mdDialog, $mdMedia) { 

(這是我不知道通過de主模塊實現的部分)。

angular.module('acc-test', ['ui.bootstrap']); 
    function AccordionCtrl($scope) { 
    $scope.oneAtATime = true; 
    } 
}); 

HTML ---------------------------

<html ng-app="frutariaApp"> 
<body ng-controller="AppCtrl"> 
<div class="accordion-test" ng-controller="AccordionCtrl"> //Ihave problem with this too 
    <accordion close-others="oneAtATime">  
    <accordion-group is-open="falsee">  
     <accordion-heading> 
      Number <i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': isopen, 'glyphicon-chevron-right': !isopen}"></i> 
     </accordion-heading> 
      <ul> 
      <li><a href="#">0</a></li> 
      <li>1</li>   
     </ul> 
    </accordion-group> 
    </accordion> 
</div> 
</body> 
</html> 

感謝

+0

什麼是''ACC-test''在你的代碼幹什麼?當你已經定義了'AppCtrl'時,爲什麼要定義'AccordionCtrl'? –

+0

你爲什麼要一起使用引導和角度材質? – Sajeetharan

回答

1

爲了使用除主模塊以外的模塊,它們必須作爲另一個模塊的依賴注入。

嘗試注入你的'acc-test'模塊到主應用程序模塊

var app = angular.module('frutariaApp', ['ngMaterial', 'ngMessages', 'acc-test']); 
+0

而其餘的代碼將是相同的?我的意思是,我持續需要這部分代碼?或者angular.module('acc-test)消失... (angular.module('acc-test',['ui.bootstrap']); function AccordionCtrl($ scope){ $ scope.oneAtATime = true; }) –

+0

是的......可以擁有任意數量的模塊,只要每個模塊至少依賴於另外一個模塊注入,那麼它們都被組合成一個「app」。然後使用任何控制器....也可以使用其他模塊中任何模塊的任何服務,因爲它們都是一個大的應用程序 – charlietfl