angular.js - Angular中關於控制器編寫方式的問題
阿神
阿神 2017-05-15 17:02:43
0
2
490

我是Angular初學者,在學習中有個關於定義控制器的寫法問題。

在剛接觸的時候,書上是這樣寫控制的:

var myApp = angular.module('MyApp', []);
myApp.controller('MyController', function($scope){
  // todo...
})

後來在一些網路上的文章,是這樣寫的:

var myApp = angular.module('MyApp', []);
myApp.controller('MyController', ['$scope', function($scope){
  // todo...
}]);

那麼問題來了,後者加了個[],是個什麼意思?這兩種寫法有什麼不同呢?

在練習中發現同樣的實作用這兩種都可以。

阿神
阿神

闭关修行中......

全部回覆(2)
大家讲道理

第二種寫法叫inline-annotation,看文檔依賴注入

這種寫法的主要目的是為了避免源碼壓縮(uglify)時變數名被替換,導致依賴注入失敗的問題。

如果對實現有興趣,可以看手寫依賴注入

给我你的怀抱

是要注入的依賴,這種寫法利於以後的程式碼壓縮

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板