Wie überprüfen Sie, ob in der Anweisung & Variable festgelegt ist

8

In einer Direktive, in der Sie einen Methodenrückruf über ein Argument setzen, sagen Sie:

%Vor%

Sie können die Variable über die Bereichseinstellung in der Rückgabe abrufen:

%Vor%

Wenn der Rückruf nicht eingestellt ist, zB:

%Vor%

Der Wert von $ scope.callback ist immer noch:

%Vor%

Gibt es eine gute Möglichkeit zu überprüfen, dass der Rückruf nicht festgelegt wurde?

    
stevedbrown 17.02.2014, 03:22
quelle

5 Antworten

10

Eine Möglichkeit, über die ich nachdenken kann, ist, den Attributparameter für den Anweisungsnamen wie

zu überprüfen %Vor%     
Chandermani 17.02.2014, 03:52
quelle
9

Sie können &? insteand von & verwenden. Es macht $ scope.callback gleich undefined , wenn es nicht zur Verfügung gestellt wird.

    
Lyubimov Roman 16.12.2015 16:04
quelle
1

Da Parameter, die an die Direktive übergeben werden, im Anwendungsbereich der Direktive liegen, suche ich lieber nach Typ. Auch wenn es als Ausdruck in der Bereichskonfiguration definiert ist:

%Vor%

So bin ich immer sicher, dass ich das bekomme, was ich erwarte.

    
sickelap 17.02.2014 05:45
quelle
1

dieser Ansatz hat für mich funktioniert:

%Vor%

Dann verwenden Sie den zweiten Parameter in der Vorlage:

%Vor%     
Ben Boyle 18.03.2016 14:15
quelle
0

Verwenden Sie angular.isUndefined , um callback function

zu überprüfen %Vor%     
Chen-Tsu Lin 17.02.2014 03:55
quelle