文章詳情頁
angular.js - Angular中關于控制器編寫方式的問題
瀏覽:304日期: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. golang - 用IDE看docker源碼時的小問題2. html - css氣泡,實現“倒三角(不知道算不算三角了)”可透明的。3. docker images顯示的鏡像過多,狗眼被亮瞎了,怎么辦?4. 運行python程序時出現“應用程序發生異常”的內存錯誤?5. docker - 如何修改運行中容器的配置6. phpstudy8.1沒集成mysql-front7. 我何時應該在Java中使用JFrame.add(component)和JFrame.getContentPane()。add(component)8. 利用IPMI遠程安裝centos報錯!9. 前端 - @media query 使用出現的問題?10. html5和Flash對抗是什么情況?
排行榜

網公網安備