Greifen Sie innerhalb von html auf die dynamische $ scope-Variable zu

9

Ich erstelle eine große Anzahl von Direktiven, und alle enthalten dynamische Bereichsvariablen, die innerhalb der Verknüpfungsfunktionen initialisiert werden Beispiel:

%Vor%

Ich möchte auf den Wert in den Vorlagen der Direktiven über scope.key zugreifen.

%Vor%

Momentan sehe ich nur, dass es durch einen Funktionsaufruf möglich ist:

html

%Vor%

js

%Vor%

Aber das Problem ist, dass ich das in alle Direktiven kopieren muss.

Eine andere Option, die ich in Betracht gezogen habe, war, die Getter-Funktion auf $rootScope zuzuweisen, sodass sie global zugänglich ist, aber wie binde ich sie an den Bereich der aktuellen Richtlinien oder gebe ihn weiter. (Wenn überhaupt möglich).

Was wäre ein guter Ansatz dazu?

    
Kiee 22.12.2015, 13:25
quelle

3 Antworten

14

Innerhalb der Angular-Vorlage zeigt this keyword auf den aktuellen Evaluierungskontext, d. h. den aktuellen Bereich. Es bedeutet, dass Sie in der Lage sind, das zu erreichen, was Sie wollen, indem Sie im this -Objekt die Klammernotation verwenden:

%Vor%     
dfsq 22.12.2015, 13:44
quelle
2

Verwenden Sie die Option bindToController in Ihrer Anweisung

JS

%Vor%

HTML

%Vor%

Überprüfen Sie diesen Codepen als Beispiel: Ссылка

    
quelle
0

Es wäre einfacher, all Ihren Code zu sehen, aber es klingt so, als könnten Sie einfach eine Funktion in Ihrem Bereich erstellen, um den Wert abzurufen:

%Vor%

Dann in Ihrem HTML:

%Vor%     
mcgraphix 22.12.2015 13:33
quelle

Tags und Links