Anzahl der untergeordneten Direktiven in der übergeordneten Direktive abrufen, bevor die Verknüpfungsfunktion ausgeführt wird

8

Wenn Sie eine Anweisung & amp; mehrere untergeordnete Anweisungen (mit require), was ist eine Möglichkeit zu wissen, wie viele untergeordnete Anweisungen ausgeführt werden?

Ich könnte einfach jedes Mal zählen, wenn die Child-Direktive ausgeführt wird (in der Link-Funktion). Aber ich möchte, dass die Eltern-Direktive weiß, wie viele Kinder es gibt, bevor die letzte Link-Funktion der Kind-Direktive ausgeführt wird.

Ich muss es wissen, weil ich ein bestimmtes Verhalten brauche, wenn das letzte Element vom Kind an die Eltern-Direktive übergeben wird.

    
Vincent 05.12.2014, 13:11
quelle

3 Antworten

3

Sie können die Tatsache ausnutzen, dass die Verknüpfung in zwei Phasen erfolgt. Sie könnten zuerst alle untergeordneten Elemente in "pre-link phase" registrieren und dann in "post-link phase" auf die erforderlichen Informationen zugreifen.

%Vor%

Auf diese Weise haben Sie während der Verknüpfung des letzten Kindes Zugriff auf diese Informationen.

Wenn Sie die Informationen in Kürze nicht benötigen, können Sie natürlich alle untergeordneten Controller im übergeordneten Controller registrieren und dann eine Methode des zuletzt registrierten untergeordneten Controllers von der übergeordneten post-link-Funktion ausführen.

>     
hon2a 15.12.2014 09:57
quelle
2

Ich bin mir ziemlich sicher, dass es nicht möglich ist, DOM nach der Elternrichtlinie zu durchsuchen. Aber ich denke, es ist kein Problem, das in einer so speziellen Richtlinie zu tun.

Also würde ich es so machen:

%Vor%

Und Anweisungen sieht so aus:

%Vor%

Hier sehen Sie das vollständige Arbeitsbeispiel: Ссылка

    
quelle
1

Die Ausführungsreihenfolge der äußeren und inneren Anweisungen ist wie folgt

%Vor%

Damit können Sie den Controller der untergeordneten Anweisung verwenden, um ihn über bestimmte Funktionen der übergeordneten Richtlinie mit dem Controller der übergeordneten Richtlinie zu verbinden.

Und dann können Sie in der Verknüpfungsfunktion der inneren Direktive eine Logik haben, um herauszufinden, ob das Element das erste oder das letzte ist, etc etc ...

    
harishr 08.12.2014 18:35
quelle