Wie man angular-ui-router-ui-sref zu arbeiten, wenn in einer Richtlinie die Vorlage?

Grundsätzlich bin ich versucht zu ändern/anzupassen, das Verhalten des ui.bootstrap.Akkordeon. Alles funktioniert, außer für die integration mit ui-router.
Hier ist der Weg, den ich nutzen möchte der Akkordeon:

  <accordion> <!-- this element is actually separate view in a parent state of the accordion-group's below.-->
    <accordion-group  ui-sref="site.home.newsID_1"> <!-- accordion-groups will be generated with ng-repeat.-->
      <accordion-heading>
        News 1
      </accordion-heading>
      <p>This is</p>
    </accordion-group>
    <accordion-group  ui-sref="site.home.newsID_2">
      <accordion-heading>
        News 2
      </accordion-heading>
      <p>Home News's</p>
    </accordion-group>
    <accordion-group ui-sref="site.home.news.newsID_3">
      <accordion-heading>
        News 3
      </accordion-heading>
      <p>Preview and navigation</p>
    </accordion-group>
  </accordion>

Unten ist die geänderte Vorlage des Akkordeon:

<div ng-mouseenter="isOpen = !isOpen" ng-mouseleave="isOpen = !isOpen">
  <div class="accordion-group" ng-class="{transparentBackground: isClicked}">

      <div class="accordion-heading">
        <a id="link" ui-sref="site" class="accordion-toggle" ng-click="isClicked = !isClicked" accordion-transclude="heading">
          {{heading}}
        </a>
      </div>

    <div class="accordion-body" collapse="!isOpen && !isClicked">
      <div class="accordion-inner" ng-transclude></div>  </div>
  </div>
</div>

Im Grunde die " Website.home.newsID_X' müssen Sie die 'Website' Wert der ui-sref innerhalb der Vorlage.
Mein Versuch war, um den Wert von ui-sref-Attribut über die 'element' - parameter aus der accordionGroup Richtlinie verbindende Funktion, wie unten dargestellt:

link: function(scope, element, attrs, accordionCtrl) {
  element.find('#link').attr("ui-sref", attrs.uiSref)
  [...]
}

Bedeutet dies aktualisieren Sie die Ziel-ui-sref, aber ui-router nicht generieren entsprechende href-Element aus der referenzierten Zustand der url, also nach dem DOM ist gerendert, ich bin immer

 <a ui-sref="site.home.newsID_1" href="#/site"></a>

statt der erwarteten

 <a ui-sref="site.home.newsID_1" href="#/site/home/newsID_1"></a>

Was bin ich?
Ich Schätze Ihre Zeit,
Jared

InformationsquelleAutor Jared Tomaszewski | 2013-09-05

Schreibe einen Kommentar