文章詳情頁
angular.js - Angular中關于控制器編寫方式的問題
瀏覽:294日期:2024-10-03 09:19:03
問題描述
我是Angular初學者,在學習中有個關于定義控制器的寫法問題。
在剛接觸的時候,書上是這樣寫控制的:
var myApp = angular.module(’MyApp’, []);myApp.controller(’MyController’, function($scope){ // todo...})
后來在一些網絡上的文章,是這樣寫的:
var myApp = angular.module(’MyApp’, []);myApp.controller(’MyController’, [’$scope’, function($scope){ // todo...}]);
那么問題來了,后者加了個[],是個什么意思?這兩種寫法有什么不同呢?
在練習中發現同樣的實現用這兩種都可以。
問題解答
回答1:第二種寫法叫inline-annotation,看文檔依賴注入

這種寫法的主要目的是為了避免源碼壓縮(uglify)時變量名被替換,導致依賴注入失敗的問題。
如果對實現有興趣,可以看手寫依賴注入
回答2:是要注入的依賴,這種寫法利于以后的代碼壓縮
相關文章:
1. docker-compose中volumes的問題2. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””3. boot2docker無法啟動4. nignx - docker內nginx 80端口被占用5. javascript - mock.js可以存儲數據嗎6. docker安裝后出現Cannot connect to the Docker daemon.7. java - SSH框架中寫分頁時service層中不能注入分頁類8. docker api 開發的端口怎么獲取?9. docker容器呢SSH為什么連不通呢?10. dockerfile - 為什么docker容器啟動不了?
排行榜

網公網安備