Pytanie w sprawie html5, javascript, google-closure, angularjs – html5, angularJS z kompilatorem zamknięcia i / lub biblioteką zamknięcia

14

Rozważam html5, angularJS do powiązania danych, a także kompilator zamknięcia google i bibliotekę zamknięcia dla interaktywnych aplikacji internetowych. Czy to razem działa dobrze? Niestety do tej pory nie ma żadnych szczegółowych raportów.

Mam doświadczenie adobe flex, ale jestem całkiem nowy w czystym js. Zatem pytania można uznać za z punktu widzenia początkującego. Nie ma bazy kodu, która musi być przeniesiona, wszystko będzie rozwijane od podstaw.

Czy ktoś inny z powodzeniem korzysta z tej kombinacji?Czy są jakieś raporty z pierwszej ręki?Czy polecasz poszczególne technologie w tym kontekście, czy są lepsze alternatywy do połączenia?Czy są jakieś dobre przykłady, przykładowe projekty, a nawet samouczki (dla kombinacji - nie dla poszczególnych technologii)?Jakieś pułapki, o których powinien wiedzieć początkujący?Czy są jakieś inne technologie ortoganalne, których powinienem użyć lub przynajmniej rozważyć?

Mniej więcej odpowiednie linki, które już znalazłem:

https://groups.google.com/forum/#!msg/angular/hePiqQA-MCI/uTirEtNLahwJhttps://groups.google.com/forum/#!msg/angular/QpdXrTLG7Ac/zjZAQVOqRlgJ
Nowi użytkownicy nie mogą publikować więcej niż dwóch linków, więc tutaj jest jeszcze jeden komentarz:groups.google.com/group/closure-library-discuss/browse_thread/… thomre
Podobają mi się tego typu pytania iw pewnym sensie jest to bardzo przydatne, ale zdziwione, widząc, dlaczego nie próbuje się tego głosować z powodu braku konstruktywności, opinii itp. Nieprzewidywalne. Saran

Twoja odpowiedź

2   odpowiedź
13

Kompilator zamknięcia

Możesz definitywnie skompilować swój kod (sam Angular jest skompilowany z kompilatorem Closure), chociaż w tym momencie możesz używać tylko prostych optymalizacji.

Zasadniczo chcemy, aby Angular dobrze współdziałał z kompilatorem.

Biblioteka zamknięć

W Google jest kilka projektów, które używają biblioteki razem z Angularem.

Używają goog.provide () i goog.require () dla zależności. Również używanie narzędzi takich jak goog.isString () lub goog.inherits () jest absolutnie proste.

Używanie komponentów interfejsu użytkownika zamknięcia może wymagać dodatkowej pracy (chociaż, znowu, są z nim projekty).

Z „prostą optymalizacją” miałem na myśli „prostą optymalizację” :-D Musisz użyć jawnych adnotacji dla DI, aby pracować ze skompilowanym kodem. Na przykład. MyController. $ Inject = ['$ scope']; Vojta
Dostępna jest już przepustka kompilatora Zamknięcia, która może automatycznie wykonać te adnotacje. Mamy nadzieję, że wkrótce zostanie ona pozyskana z otwartych źródeł ... Vojta
czy masz na myśli optymalizację „prostą optymalizację” czy tylko „tylko białe spacje”? Próbowałem to zrobić w prosty sposób za pomocą aplikacji internetowej kompilatora zamknięcia i po jej zastąpieniuMyController($scope) zMyController(a) (wraz ze wszystkimi innymi odniesieniami do$scope w kontrolerze), mój kod pęka. Marc
4

Mam nadzieję, że to pomoże

Zmień kod

function MyCtrl($scope) {/* code */}

Do

var MyCtrl = ['$scope', function($scope) {/* code */}]

Powiązane pytania