2017-04-18 3 views
0

Hallo Jungs so bin ich ein Problem mit einer Richtlinie mitAngularJS Richtlinie Konflikte in anderer Umgebung

Fehlern in der Konsole:

Error: [$compile:multidir] http://errors.angularjs.org/1.5.0/ $compile/multidir?p0=attendeesGroup&p1=&p…3A%3AeventCode%22%20attendees%3D%22attendees%22%20search%3D%22search%22%3E at app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1 at bt (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1) at ai (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1) at app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1 at app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1 at p.$eval (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1) at p.$digest (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1) at p.$apply (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1) at ft (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1) at tt (app?v=i8y6GpTaEb1RAE-DuP0yglQXfZKxm4UD1Y48hiIfGJg1:1)

Fehler von Winkeln Website

Multiple directives [attendeesGroup, attendeesGroup] asking for template on: <attendees-group event="::eventCode" attendees="attendees" search="search"> 

Ausführliche Beschreibung here die Sache ist, dass es ok auf meinem localhost funktioniert, es funktioniert ok auf einem 2. (Test) Umgebungen, aber es funktioniert nicht auf dem 3. (Pre-prod)

Dies ist die HTML

<div ng-hide="groups"> 
     <attendees-group event="::eventCode" attendees="attendees" search="search" /> 
    </div> 

    <div ng-show="groups"> 
     <div ng-repeat="group in groups"> 
      <div ng-show="$parent.attendeesNumber[$index] = (group.Attendees | filter:search).length"> 
       <h6 class="med-heading"> 
        <span ng-bind="::group.Value || 'Other'"></span> 
        <span style="font-size: 75%; margin-left: 5px; cursor: pointer;" 
          ng-if="canManage && group.Value" 
          class="fa fa-paint-brush" 
          ng-click="::changeColor(group.Value)"></span> 
       </h6> 
       <attendees-group event="::eventCode" attendees="group.Attendees" search="search" /> 
      </div> 
     </div> 
     <div ng-show="checkAttendeesNumber()"> 
      <h6 class="med-heading"> 
       <small>No attendees found. </small> 
      </h6> 
     </div> 
    </div> 

Dies ist die Richtlinie

angular.module('Events').directive('attendeesGroup', [ 
    function() { 
     return { 
      restrict: 'E', 
      scope: { event: '=', attendees: '=', search: '=' }, 
      templateUrl: '/Content/AngularApp/Attendees/Components/AttendeesGroup/Template.html', 
      link: function ($scope, $element, $attrs) { } 
     }; 
    } 
]); 

Irgendwelche Ideen, Anregungen? Danke

Antwort

0

Es scheint, als ob Sie die Teilnehmergruppe mehrfach in Ihrem Winkelcode deklarieren.

+0

Nein, es ist die einzige "attendersGroup" für alle .js-Dateien und wird nur als Anweisung wie oben beschrieben verwendet. –

0

Ok, ich habe das Problem entdeckt, diese Antwort kann hilfreich sein oder nicht, je nachdem, wie der Server und der Deployment-Prozess konfiguriert wurde, aber gibt einen Vorschlag und mögliche Ursache des Problems.

Wir verwenden also jenkins für den Einsatz in der Integrationsumgebung und Octopus für das Verschieben der Pakete von der Integration zur nächsten und so weiter. Das Problem war, dass aus irgendeinem Grund (vielleicht funktioniert Octopus so oder so konfiguriert wurde, weiß es nicht), wenn die Implementierung von der Integration in die nächste Umgebung durchgeführt wurde, in meinem Fall, die Dateien aus früheren Deployments wurden beibehalten und als das Paket fertig war, enthielt es sowohl die vorherige als auch die neue Version (* .js), was zu einer gebündelten duplizierten Direktive führte. Ich habe das Problem gelöst, indem ich die früheren Versionsdateien aus der Testumgebung löschte.