2017-05-05 1 views
1

私はAngularJSアプリケーションで作業しています。私のindex.htmlでAngularJS UiBoostrapアコーディオン。コントローラ 'uibAccordion'は、指示文 'uibAccordionGroup'に必要です。

、私のbodyタグの終わりに、私はこの宣言:私は私のangular.module

でそして、私のhtmlで 'ui.bootstrap' を含める

<script src="bower_components/angular/angular.min.js"></script> 
<script src="bower_components/angular-bootstrap/ui-bootstrap.min.js"></script> 
<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js"></script> 

を、私はP

...これは正常に動作しているUIB-アコーディオン

<div id="Help" uib-accordion-group is-open="main.openHelp"> 
    <uib-accordion-heading> 
     <span > 
      Help 
     </span>    
     <span> 
      <i class="pull-right fa" ng-click="main.openHelp = !main.openHelp" ng-class="{'fa-chevron-down': main.openHelp, 'fa-chevron-left': !main.openHelp}"></i>      
     </span> 
    </uib-accordion-heading> 
    <div class="row"> 
     <div> 
      Useless Content 
     </div> 
    </div> 
</div> 

、私は/ etc近いそれを開くことができます使用するようにしてください私はエラーが記録されているということです: https://docs.angularjs.org/error/$compile/ctreq?p0=uibAccordion&p1=uibAccordionGroup

私はこれを解決するために何をすべきか理解していません。

ところで、私はこのページで複数回uib accordionを使用しているので、このエラーは複数回記録されます。 (私は別の<div uib-accordion-group ></div>タグを持つ)

+0

angular.module( 'myModule'、['ui.bootstrap'])を追加しました。あなたのモジュールで –

+0

私が言ったことと違いはありますか?var app = angular.module( 'myModule'、['ui.bootstrap']) このモジュールを次の場所に含める必要がありますか?私は、私の角モジュールに 'ui.bootstrap'もう一つ? –

+1

を含める必要はありません。

答えて

2

実際にエラーがあなたの指示により必要なヒント

コントローラー「uibAccordion」を与える「uibAccordionGroup」、見つけることができません!

ヒントの語義はrequiredです。 AngularJS、directives can define a requirement to be included inside other directivesでは、これらの父親の指示が存在しない場合、エラーが発生します。

あなたの場合、uibAccordionGroupディレクティブは、HTML内で定義していないuibAccordion内にネストする必要があります。

これ

は、あなたはどちらか

<script src="bower_components/angular-bootstrap/ui-bootstrap.min.js">

または

<script src="bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js">

ない

が含まれている必要があり、それは

<uib-accordion close-others="oneAtATime"> <!-- pay attention to this line --> 
    <div id="Help" uib-accordion-group is-open="main.openHelp"> 
     <uib-accordion-heading> 
     <span > 
      Help 
     </span>    
     <span> 
     <i class="pull-right fa" ng-click="main.openHelp = !main.openHelp" ng-class="{'fa-chevron-down': main.openHelp, 'fa-chevron-left': !main.openHelp}"></i>      
     </span> 
    </uib-accordion-heading> 
     <div class="row"> 
      <div> 
       Useless Content 
      </div> 
     </div> 
    </div> 
</uib-accordion> 

また@Nair Athulのように見えることになって、右であるかでありますどちらも!

+1

それは働いた。しかし今、見出しは異なった振る舞いをしています。私はアコーデオンを開閉する以外の何かをしていたボタンがありました。今、私がそれをクリックすると、見出しのすべてが私のアコーデオンを閉じる/開いています。私はそれらを置くことができたので、私は大丈夫です –

+0

'今、見出しのすべてが、私がそれをクリックすると、私のアコーデオンを閉じる/開いてしまいます。 https://github.com/angular-ui/bootstrap/issues/3299 – svarog

関連する問題