Kann man einen isolate-Bereich mit optionaler kaufmännischer Bindung (Elternkontext) erstellen?Isolieren Sie die Bereichsrichtlinie mit optionalem Und-Zeichen-Binding in angularjs?
scope: {
myMethod: '&?'
}
Wenn die Anweisung implementiert wird, ohne myMethod zuzuweisen, tritt kein Fehler auf. Ich sehe jedoch, wenn die optionale Eigenschaft nicht zugewiesen ist, Angular es sowieso eine Noop-Funktion. Daher scheint es innerhalb der Richtlinie keine Möglichkeit zu geben, zu wissen, ob der Implementierer der optionalen Eigenschaft eine Methode zugewiesen hat oder nicht.
link: function (scope, element, attrs) {
scope.myMethod(); //this calls a noop function instead of being undefined, as i exected
}
Irgendwelche Einsichten? Ich würde gerne wissen, ob der Implementierer die optionale Eigenschaft zugewiesen hat.
Dies ist richtige Antwort –
abhängig, welche Version von AngularJS Sie verwenden! @ DRiFTy's Antwort war korrekt, wenn Sie auf einer Version festhalten, die diesen Fix nicht hat! –