AngularJS hat eine neue Syntax zum Definieren von Controllern eingeführt, „Controller as“, die einige Probleme verursacht hat Fragen zu seinem Zweck. Ziel dieses Artikels ist es, die Gründe für diese Syntax und ihre Vorteile zu verdeutlichen.
Mit der „Controller-as“-Syntax können Sie einen Controller instanziieren und ihn einer Variablen im aktuellen zuweisen Umfang. Zum Beispiel:
controller('InvoiceController as invoice')
Dieser Code weist Angular an, eine Instanz des InvoiceControllers zu erstellen und diese in der Rechnungsvariablen innerhalb des aktuellen Bereichs zu speichern.
Ein bemerkenswerter Unterschied bei der Syntax „controller as“ besteht darin, dass der Parameter $scope aus der Controllerdefinition entfernt wird. Dies ermöglicht sauberere und prägnantere Controller:
// With $scope
function InvoiceController($scope) {
// Do something with $scope.qty
}
// With controller as
function InvoiceController() {
// Do something with this.qty
}
Das Entfernen von $scope aus dem Controller vereinfacht zwar den Code, erfordert aber die Angabe eines Alias in der Ansicht:
// With $scope
// With controller as
Die „Controller-as“-Syntax wurde hauptsächlich aus folgenden Gründen eingeführt:
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3