12

今日、私はangle-ui-bootstrapパッケージを1.3から2.0にアップグレードしました。angular-ui-bootstrap upgrade 1.3.3から2.0.0が見つかりませんuibAccordionGroupコントローラ

Error: [$compile:ctreq] Controller 'uibAccordionGroup', required by directive 'uibAccordionHeading', can't be found! http://errors.angularjs.org/1.5.7/ $compile/ctreq?p0=uibAccordionGroup&p1=uibAccordionHeading

これは、コードの患部:

<div> 
    <uib-accordion> 
     <uib-accordion-group is-open="true"> 
      <uib-accordion-heading> 
       {{vm.moduleMenu.name}}<i class="pull-right glyphicon"></i> 
      </uib-accordion-heading> 

      <div>... other content...</div> 
     </uib-accordion-group> 
    </uib-accordion> 
</div> 

私はこの問題を解決するために、これまでにやった:

私は正しいファイルが含まれているかどうかをチェック
  • - >細かい
  • ディレクティブの名前が変更されたかどうか、新しいソースコードを確認しました。正しくはありません。
  • 私はuibAccordionGroupコントローラを検索しましたが、私はそれを見つけませんでした...
  • uib-accordion-groupタグにヘッダーを戻しました。エラーは消えましたが、スタイルは適用されず、見出しのテキストのみが表示されます
  • 私はUIB-アコーディオン見出しを削除した結果は上記と同じであり、アコーディオンのコンテンツが表示されますが、何のスタイルはありませんが

を適用し、誰もが以前にこの問題に会ったことがありますか?

図書館:

  • 角度1.5.7
  • 角度-UI 2.0.0

おかげで、V2.0.0では

+0

なぜそれはdownvotedですか? – SayusiAndo

+0

私の推測では、コードレポやチェンジログのようなものは、この問題をかなり簡単に説明していたので、この質問は研究を示さなかったと考えている人がいると思います。結局のところ、メジャーバージョンをアップグレードするときには、変更ログを掘り下げることがベストプラクティスです –

+0

あなたの答えをありがとう!リリースノートとチェンジログが私のチェックリストにあります。 – SayusiAndo

答えて

29

角度uiブートストラップの構文がバージョン1.3からバージョン2.0に若干変更されたため、このエラーが発生しています。

はここで、ウェブサイト上のアコーディオンの例からの抜粋です:アコーディオングループは今属性、およびない要素ある

<uib-accordion close-others="oneAtATime"> 
<div uib-accordion-group class="panel-default" heading="Static Header, initially expanded" is-open="status.isFirstOpen" is-disabled="status.isFirstDisabled"> 
    This content is straight in the template. 
</div> 
<div uib-accordion-group class="panel-default" heading="{{group.title}}" ng-repeat="group in groups"> 
    {{group.content}} 
</div> 
<div uib-accordion-group class="panel-default" heading="Dynamic Body Content"> 
    <p>The body of the uib-accordion group grows to fit the contents</p> 
    <button type="button" class="btn btn-default btn-sm" ng-click="addItem()">Add Item</button> 
    <div ng-repeat="item in items">{{item}}</div> 
</div> 
<div uib-accordion-group class="panel-default" heading="Custom template" template-url="group-template.html"> 
    Hello 
</div> 
<div uib-accordion-group class="panel-default" is-open="status.isCustomHeaderOpen" template-url="group-template.html"> 
    <uib-accordion-heading> 
    Custom template with custom header template <i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': status.isCustomHeaderOpen, 'glyphicon-chevron-right': !status.isCustomHeaderOpen}"></i> 
    </uib-accordion-heading> 
    World 
</div> 
<div uib-accordion-group class="panel-danger" heading="Delete account"> 
    <p>Please, to delete your account, click the button below</p> 
    <button class="btn btn-danger">Delete</button> 
</div> 
<div uib-accordion-group class="panel-default" is-open="status.open"> 
    <uib-accordion-heading> 
    I can have markup, too! <i class="pull-right glyphicon" ng-class="{'glyphicon-chevron-down': status.open, 'glyphicon-chevron-right': !status.open}"></i> 
    </uib-accordion-heading> 
    This is just some content to illustrate fancy headings. 
</div> 

注意してください。

これは問題を解決するはずです。

+0

ありがとう、私はそれを理解するために一晩中それを見ることができます。 – SayusiAndo

3

uib-accordion-groupは今の属性ではない要素であり、 。あなたはrepo hereのそれを見ることができます。 <div uib-accordion-group></div>に変更すると、エラーを解決するのに役立ちます。

3

2.0.0以来、uibAccordion & uibAccordionGroupディレクティブの使用はA(属性)に限定されています。 code hereを参照してください。それらは属性指示として&と同様にuib-accordion,uib-accordion-groupとして使用されるべきです。

ライブラリを最新のバージョンにアップグレードする場合はいつでも、githubリポジトリのchange logsを参照してください。これにより、あなたの現在の更新で何がうまくいかないかを尋ねる必要はありません。

+0

downvoteの背後に何らかの理由はありますか? –

関連する問題