AngularJS引入了定義控制器的新語法“controller as”,這引起了一些關注關於其目的的問題。本文旨在闡明此語法背後的基本原則及其優點。
「controller as」語法可讓您實例化控制器並將其指派給目前的變數範圍。例如:
controller('InvoiceController as invoice')
此程式碼告訴 Angular 建立 InvoiceController 的實例並將其儲存在目前範圍內的 Invoice 變數中。
與「controller as」語法的一個顯著區別是它從控制器中刪除了 $scope 參數控制器定義。這允許更乾淨、更簡潔的控制器:
// With $scope
function InvoiceController($scope) {
// Do something with $scope.qty
}
// With controller as
function InvoiceController() {
// Do something with this.qty
}
雖然從控制器中刪除$scope可以簡化程式碼,但它要求您在視圖中指定別名:
// With $scope
// With controller as
引入「controller as」語法主要是出於以下原因:
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3