javascript - kaedah penulisan pengawal angularjs
为情所困
为情所困 2017-06-07 09:23:58
0
2
755
angular.module('myApp',[])
.controller('DemoController',['$rootScope','$scope','$http',function($rootScope,$scope,$http){

}])

angular.module('myApp',[])
.controller('DemoController',function($rootScope,$scope,$http){

})

Apakah perbezaan antara kedua-dua ini?

为情所困
为情所困

membalas semua(2)
phpcn_u1582

Selepas function, tiada keperluan pesanan atau kuantiti untuk parameter yang diluluskan.

Cara pertama ialah dengan menentukan pembolehubah yang dihantar ke function 的变量用字符串 '$rootScope','$scope','$http' dengan rentetan '$rootScope','$scope','$http', dan cara kedua hanyalah nama pembolehubah ringkas

Sebab alat mampatan js akan function($rootScope,$scope,$http) 里的 $rootScope,$scope,$http 混淆压缩掉, 比如换成了 function(a,b,c).

Selepas kod dikaburkan dan dimampatkan, angular tidak tahu parameter (atau kebergantungan) yang dihantar ke function, dan ia tidak boleh dijalankan selepas diimport dan dimampatkan.

洪涛

Ini adalah dua cara suntikan kebergantungan sudut:
Yang pertama ialah suntikan sebaris, kedua adalah suntikan inferens (ada juga suntikan eksplisit)
Perbezaannya ialah
Suntikan sebaris:
membolehkan kita bermula dari dalam baris apabila fungsi ditakrifkan Lulus dalam parameter. Tambahan pula, ia mengelakkan penggunaan pembolehubah sementara semasa definisi.
Suntikan disimpulkan:
Jika tiada pengisytiharan eksplisit, Angular akan menganggap bahawa nama parameter ialah nama kebergantungan, tetapi proses ini hanya terpakai pada kod yang tidak dimampatkan dan tidak dikelirukan, kerana Angular memerlukan senarai parameter yang tidak dimampatkan asal untuk penghuraian. (Namun, anda boleh memperkenalkan gulp-ng-annotate dalam proses pembungkusan untuk menukar suntikan inferens kepada suntikan sebaris)

Adalah disyorkan agar anda membaca kaedah suntikan kebergantungan sudut

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan