2014-02-14 2 views
0

В настоящее время я разрабатываю webapp с AngularJS для гигантской компании, и я пытаюсь получить простой FAQ внутри модального.AngularJS - FAQ внутри модального (ошибка?)

В моем локальном хосте Справки он работает просто отлично (очень похож на оригинал FAQ в угловой документации), но когда я пишу точно такой же код внутри модального я получаю сообщение об ошибке консоли:

TypeError: Object [object Object] has no method 'addGroup' 

Важно указать, что внутри модального my $ scope.oneAtATime = true; это игнорируется, поэтому в основном, даже если я заставляю это быть правдой

<accordion close-others="true"> 

Это всегда неверно. Этот метод addGroup находится в коде библиотеки AngularJS.

Любые идеи?

HTML-:

<div class="modal__container__body"> 
     <div id="faq_accordion" ng-controller="AccordionController"> 
      <accordion close-others="true"> 
       <accordion-group heading="{{faq.title}}" ng-repeat="faq in faqs"> 
        {{faq.content}} 
       </accordion-group> 
      </accordion> 
    </div> 

    </div> 

Контроллер

lobby.controller("AccordionController", ["$scope", function ($scope) { 

    $scope.oneAtATime = true; 

    $scope.faqs = [ 
     { 
     title: "Q1?", 
     content: "A1" 
     }, 
     { 
     title: "Q2?", 
     content: "A2" 
     }, 
     { 
     title: "Q3?", 
     content: "A3" 
     }, 

     { 
      title: "Q4?", 
      content: "A4" 
     } 


    ]; 
}]); 

Пожалуйста, обратите внимание, что в приведенном выше коде я форсирования крупным другим, чтобы быть правдой, прямо на вкладке HTML.

Помощь?

+1

Вы можете сделать плункер? – Nikos

ответ

1

У нас была та же проблема, в последнее время, изменить

<div id="faq_accordion" ng-controller="AccordionController"> 

в

<div id="faq_accordion" ng-controller="MyAccordionController"> 

Это должно исправить. Вы в основном перезаписываете контроллер плагинов своим. Не забудьте также изменить определение контроллера, это часть, которая нарушает его.

+0

Это решило проблему. Кроме того, если вы хотите «заставить» его быть «истинным» непосредственно на HTML, вы должны поместить double «», например «true». Является ошибкой, известной угловатой общине, и скоро ее нужно исправлять! – DjayCi

Смежные вопросы