Próbuję zrozumieć plik angularjs, którego muszę używać do integracji z Django, i ma dziwną składnię, której nie znam (pamiętaj, że jestem młodszym twórcą, więc to może być twój chleb i masło) ...Dlaczego użyto "window.angular" w tej definicji funkcji?
to idzie mniej więcej tak:
(function(angular, undefined){
'use script';
var djng_forms_module = angular.module('ng.django.forms', []);
funtion hasCode(s){
return .....
}
var foo = .....
}(window.angular));
widziałem this o koncepcji javascript okna i pokazuje, że window
częścią jest top() obiektu poziomu przeglądarki? tworzy podczas ładowania strony.
Uruchamianie console.log(window.angular)
powoduje wydrukowanie ładunku wewnętrznych elementów kątowych. Zgaduję, że to wewnętrzna żyłka AngularJS ...?
Ale dlaczego ta dziwna enkapsulacja jest funkcją (co ma związek z JavaScriptem jako językiem "funkcjonalnym")?
Pełny skrypt to here i nie mogę zrozumieć, dlaczego używa on window.angular
w tej definicji funkcji (w przeciwieństwie do normalnego sposobu robienia rzeczy). Wygląda na to, że ta konfiguracja oznacza, że nie działa dla mojej aplikacji, gdy importuję ją za pomocą tagów script
.