2013-02-25 11 views
31

Jestem programistą JQuery, który chce wykorzystać AngularJS do mojego następnego projektu. Po przeczytaniu this excellent answer o tym, jak "myśleć w Angular" zamiast włączania i używania JQuery, zastanawiam się, jakie dobre przypadki użycia istnieją w przypadku używania JQuery + Angular. Chciałbym przybliżyć trochę mojego programowania Angular.Przypadki użycia AngularJS i JQuery

Cytując ze stanowiska Stackoverflow:

„Najważniejsze jest to: kiedy przesycania, najpierw«myśleć w angularjs»; jeśli nie można myśleć o rozwiązaniu zapytać społeczność; jeśli po tym wszystkim nie ma łatwego rozwiązania, następnie czuć się swobodnie, aby sięgnąć po jQuery "

Kiedy powinienem sięgnąć po JQuery?

Odpowiedz

14

myślę kluczowe słowa cytat z Twojego pytania są „* jeśli mimo wszystko, że nie ma łatwy rozwiązanie *”

Zastanawiam się jakich przypadkach dobre wykorzystanie istnieć dla jQuery + kątowe.

Przypadek użycia: Projekt, nad którym pracuję, wykorzystuje komponent "ujawnienia" Fundacji Zurb na modalne okno, które szczególnie lubię. To komplementy dla aplikacji, nad którą pracuję. Oczywiście istnieje projekt Angular UI, który zawiera okno modalne, ale wolałem ujawnić w tym przypadku.

Ma to zależność od JQuery. Użytkownik blesh odpowiedział świetnymi pomysłami, jak włączyć to AngularJS way here.

Po pewnych badaniach, jeśli dojdziesz do wniosku, że możesz zrobić coś łatwiej w JQuery, to zrób to, ale koniecznie zintegruj komponent z metodą AngularJS.

To jest moje zdanie na ten temat.

+0

+1 W projekcie [Bootstrap] (http://angular-ui.github.com/bootstrap) istnieje rzeczywiście modalny moduł Angular UI. Ale żadne rozwiązanie nie jest właściwe we wszystkich przypadkach. Istniejące komponenty często są dobrym powodem do korzystania z jQuery - jeśli nie jest to stosunkowo łatwe, dlaczego warto odkryć nowe koło? Popieram tylko, abyśmy uważnie zastanawiali się nad naszymi przypadkami użycia - i jak powiedziałeś, kiedy * robimy * używamy jQuery, musimy być pewni, że poprawnie go zintegrujemy. –

15

AngularJS to złożony framework o umiarkowanej do stromej krzywej uczenia się. JQuery nie jest strukturą, ale biblioteką. Jeśli chcesz zbudować aplikację na jedną stronę, szczególnie aplikację CRUD, to AngularJS jest dobrym rozwiązaniem, ponieważ oferuje dwukierunkowe wiązanie danych, routing (ważne dla aplikacji z jedną stroną) oraz wiele innych funkcji.

Używa jQlite jako podzestawu jQuery, ale ma opinię na temat tworzenia aplikacji, co oznacza, że ​​potrzebujesz solidnego zrozumienia, jak to działa, musisz znać kontrolery, usługi i dyrektywy i dlaczego powinieneś aktualizować DOM w dyrektywach.

Jednorazowe aplikacje można wykonywać za pomocą samej jQuery, ale trzeba samodzielnie zarządzać stroną zrębową.

Jeśli dołączysz jQuery przed AngularJS zastąpi jQlite, aby opanować podstawy, a tym samym uzbroić się w wiedzę, aby podejmować decyzje dotyczące jej wykorzystania, spójrz na te excellent videos at egghead.io.

Kiedy sięgnąć jQuery

dotrzeć do jQuery, gdy nie można zrobić coś kątowego sposób, jest to często, gdy jesteś na granicy ram.

Przykłady:

Przykładem tego jest kątowa nie ma sposobu, aby wyłączyć elementy w wybranej elementu. W tym miejscu można sięgnąć po jQuery, aby odsłuchać wydarzenie zmiany dotyczące wyboru i manipulowania interfejsem użytkownika z poziomu dyrektywy. Zobacz aktualizację poniżej.

Jeśli używasz na przykład biblioteki innej firmy, może być konieczne wyzwolenie zdarzenia za pomocą jQuery i odebranie go w kodzie strony trzeciej lub w innym miejscu. Tutaj znajdziesz nieocenione jQuery lub coś w rodzaju pubsub.

UPDATE

Odnośnie możliwości routingu, gorąco polecam doskonałą UI-Router zamiast out routera skrzynki.

UPDATE v2

kątowe 1.4 posiada teraz wsparcie dla wyłączając opcje w wybranej elementu.

Powiązane problemy