Czym różni się AngularJS od jQuery

Znam tylko jedną bibliotekę js i jest nią jQuery .
Ale moje inne kodery w grupie zmieniają AngularJS jako domyślną bibliotekę w nowym projekcie.

Nic o tym nie wiem. Czym się różni od jQuery?
Mam już zestaw funkcji zrobionych dla podobnych zadań w jQuery. Czy mogę nadal używać rzeczy jQuery z AngularJS?

Author: Blackhole, 2012-10-31

6 answers

  1. Podczas gdy Angular 1 był ramą, Angular 2 jest platformą . (ref )

Dla programistów, Angular2 zapewnia pewne funkcje poza wyświetlaniem danych na ekranie. Na przykład, użycie narzędzia angular2 CLI może pomóc "wstępnie skompilować" kod i wygenerować niezbędny kod javascript (Tree-shaking ), aby zmniejszyć rozmiar pobierania do 35kish.

  1. Angular2 emulował Dom cienia. (ref )

To otwiera drzwi do renderowania serwera które mogą rozwiązać problem SEO i pracować z Nativescript itp, które nie działają na przeglądarkach.

  • Oficjalna strona dokumentu

  • Pierwszy dzień konferencji ng-conf 2016

  • Resource links Oryginalny: Zasadniczo jQuery jest doskonałym narzędziem do manipulowania i kontrolowania elementów DOM. Jeśli skupiasz się tylko na elementach DOM i bez danych CRUD, jak budowanie strony internetowej, a nie aplikacji internetowej, jQuery jest jednym z najlepszych narzędzi. (Możesz również użyć AngularJS do tego celu.)

AngularJS jest frameworkiem . Posiada następujące cechy

  1. dwukierunkowe powiązanie danych
  2. wzór MVW (MVC-ish)
  3. Szablon
  4. Custom-directive (komponenty wielokrotnego użytku, niestandardowe znaczniki)
  5. przyjazne dla odpoczynku
  6. Deep Linking (skonfiguruj link dla dowolnej dynamicznej strony)
  7. Walidacja Formularza
  8. Komunikacja Z Serwerem
  9. Lokalizacja
  10. Dependency injection
  11. pełne testing environment (both unit, e2e)

Sprawdź to prezentacja i to świetne wprowadzenie

Nie zapomnij zapoznać się z oficjalnym poradnikiem programisty

Lub naucz się tego z tych niesamowitych samouczków wideo

Jeśli chcesz obejrzeć więcej filmów instruktażowych, sprawdź ten post, kolekcja najlepszych samouczków 60 + AngularJS .

Możesz używać jQuery z AngularJS bez żadnego problemu.

W rzeczywistości, AngularJS używa w nim jQuery lite, co jest świetnym narzędziem.

From FAQ

Czy Angular używa biblioteki jQuery?

Tak, Angular może używać jQuery, jeśli jest obecny w aplikacji, gdy aplikacja jest uruchamiana. Jeśli jQuery nie jest obecny w Twoim ścieżka skryptu, Angular wraca do własnej implementacji podzbiór jQuery, który nazywamy jQLite.

Jednak nie próbuj używać jQuery do modyfikowania DOM w AngularJS kontrolerzy, zróbcie to w swoich dyrektywach.

Update:

Angular2 jest zwolniony. Proszę. jest to świetna lista zasobów na początek

 414
Author: maxisam,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-01-07 12:04:22

Chcę dodać coś odnośnie AngularJS różnicy z jQuery z perspektywy dewelopera.

W AngularJS musisz mieć bardzo uporządkowany widok i podejście do tego, co chcesz osiągnąć. Wykonanie zadania nie jest zgodne z modą linear, ale raczej wymiana między różnymi obiektami zajmuje się żądaniami i akcjami, co jest konieczne, ponieważ angular jest frameworkiem opartym na MVC. Wymaga również przynajmniej ogólny schemat sfinalizowanej aplikacji, ponieważ kodowanie zależy w dużej mierze od tego, jak chcesz, aby interakcje zostały zakończone.

JQuery jest jak wolna poezja, piszesz wiersze i zachowujesz pewne relacje i rozmach odpowiednie do wykonania zadania.

Chociaż w Angular JS należy przestrzegać pewnych zasad, a także zachować właściwy rozmach i relacje, może jest to bardziej klasyczny SONET Spencerowski (słynny poeta klasyczny), którego wiersz jest strukturalny i związany z wieloma zasadami.

W porównaniu z AngularJS, jQuery jest bardziej jak zbiór kodów i funkcji (co jest, jak już wspomniano, świetne do manipulacji DOM i szybkiego osiągania efektów), podczas gdy AngularJS jest prawdziwym frameworkiem, który daje deweloperowi możliwość zbudowania korporacyjnej aplikacji internetowej z wieloma powiązaniami i wymianą danych w ramach doskonale zorganizowanego routingu i zarządzania.

Ponadto AngularJS nie ma zależności od jQuery aby wykonać swoje zadanie. Ma dwie bardzo wspaniałe funkcje, których nie można znaleźć w jQuery w żadnym sensie:

1- Angular JS uczy, jak kodować i osiągnąć cel, a nie tylko osiągnąć cel za pomocą jakichkolwiek środków. Warto wspomnieć, że AngularJS w pełni wykorzystuje rdzeń i serce Javascripts i toruje drogę do włączenia do aplikacji technik takich jak DI (dependency-injection). Aby pracować z angularJS powinieneś (lub musisz) nauczyć się bardziej zaawansowanych technik kodowania z Javascript.

2- Angular JS jest w pełni niezależny do obsługi dyrektyw i struktury aplikacji; można wtedy po prostu twierdzić, że jQuery może zrobić to samo (niezależność), ale, rzeczywiście, AngularJS, jak kilka razy wspomniano w powyższych liniach, ma niezależność w najbardziej doskonały sposób strukturalnie oparty na MVC.

Ostatnia uwaga jest taka, że nie ma wojny nazw, ponieważ bycie stronniczym lub subiektywnym jest daleko niepokojące. wielkość i wielkość jQuery została udowodnione, ale ich zwyczaje i ograniczenia (dowolnego frameworka lub oprogramowania) są przedmiotem dyskusji i podobnych debat wokół.

Update:

Użycie AngularJS jest decydujące, ponieważ jest kosztowne pod względem implementacji, ale stanowi silną podstawę dla przyszłej rozbudowy, transformacji i utrzymania aplikacji. AngularJS jest dla Nowego Świata sieci. Jest skierowany do zastosowań budowlanych, które charakteryzują się najmniejszym zużyciem zasobów (Ładowanie tylko niezbędnych zasobów z serwera), szybki czas reakcji oraz wysoki stopień konserwacji i rozbudowy systemu.

 41
Author: Mostafa Talebi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-14 08:32:38

AngularJS: AngularJS jest przeznaczony do tworzenia ciężkich aplikacji internetowych. AngularJS może używać jQuery, jeśli jest obecny w aplikacji internetowej podczas uruchamiania aplikacji. Jeśli nie jest obecny w ścieżce skryptu, to AngularJS wraca do własnej implementacji podzbioru jQuery.

JQuery: jQuery jest małą, szybką i bogatą w funkcje biblioteką JavaScript. To sprawia, że rzeczy takie jak dokument HTML i manipulacji, obsługi zdarzeń, animacji i Ajax wiele prościej. jQuery upraszcza wiele skomplikowanych rzeczy z JavaScript, takich jak wywołania AJAX i manipulacja DOM.

Czytaj więcej szczegółów tutaj: angularjs-vs-jquery

 29
Author: kmario23,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-12-06 04:45:32

Wydaje mi się, że jest to bardzo dobry Wykres opisujący w skrócie różnice. Szybki rzut oka na to pokazuje większość różnic.

Tutaj wpisz opis obrazka

Jedną rzeczą, którą chciałbym dodać jest to, że AngularJS mogą być wykonane zgodnie z wzorcem projektowym MVVM , podczas gdy jQuery nie podąża za żadnym ze standardowych wzorców obiektowych.

 21
Author: Pritam Banerjee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-29 20:31:41

Pracują na różnych poziomach.

Najprostszym sposobem, aby zobaczyć różnicę, z perspektywy początkującego jest to, że jQuery jest zasadniczo abstrakcją JavaScript, więc sposób, w jaki projektujemy stronę dla JavaScript, jest prawie tak, jak zrobimy to dla jQuery . Zacznij od DOM, a następnie zbuduj na nim warstwę zachowania. Nie tak z Angular.Js . Proces naprawdę zaczyna się od podstaw, więc efekt końcowy jest pożądany widok.

Z jQuery robisz dom-manipulacje, z kątowe.Js tworzysz całe aplikacje internetowe.


JQuery został zbudowany w celu abstrakcji różnych idiosynkracy przeglądarki i pracy z DOM bez konieczności dodawania sprawdzeń IE6 i tak dalej. Z biegiem czasu opracowała ładne, solidne API, które pozwoliło nam zrobić wiele rzeczy, ale w swej istocie jest przeznaczone do radzenia sobie z DOM, znajdowania elementów, zmieniania interfejsu użytkownika i tak dalej. Pomyśl o tym, jak o pracy bezpośrednio z nakrętkami i śruby.

Kanciaste.Js został zbudowany jako warstwa na wierzchu jQuery, aby dodać MVC do front end engineering. Zamiast dawać Ci API do pracy z DOM, Angular.Js daje wiązanie danych, szablony, niestandardowe komponenty (podobne do jQuery UI, ale deklaratywne zamiast wyzwalania przez JS) i wiele więcej. Pomyśl o tym, jak o pracy na wyższym poziomie, z komponentami, które można połączyć ze sobą, zamiast bezpośrednio przy nakrętkach i śrubach poziom.

Dodatkowo, Kanciaste.Js daje Ci struktury i koncepcje, które mają zastosowanie do różnych projektów, takich jak kontrolery, usługi i dyrektywy. jQuery sam w sobie może być używany na wiele (gazillion) sposobów, aby zrobić to samo. Na szczęście to znacznie mniej z kanciastym.Js , co ułatwia wchodzenie i wychodzenie z projektów. Oferuje rozsądny sposób dla wielu osób, aby przyczynić się do tego samego projektu, bez konieczności ponownego uczenia się systemu z scratch.


Krótkie porównanie może być takie -

JQuery

    Może być łatwo używany przez tych, którzy mają odpowiednią wiedzę na temat selektorów CSS]} Jest to biblioteka używana do manipulacji domami.]}
  • nie ma nic wspólnego z modelami
  • Łatwo manipulować zawartością strony internetowej]}
  • stosuj style, aby UI było bardziej atrakcyjne
  • Easy DOM traversal
  • efekty i animacje
  • proste wykonywanie połączeń AJAX i
  • użyteczność narzędzia
  • nie mają funkcji wiązania dwukierunkowego
  • Jest to bardzo ważne, ponieważ jest to bardzo ważne, ponieważ jest to bardzo ważne.]}
  • czasami trzeba napisać więcej kodu, aby osiągnąć taką samą funkcjonalność jak w Angular.Js

Kanciaste.Js

    Jest to framework MVVM.]}
  • używane do tworzenia aplikacji SPA (Single Page Applications)
  • posiada kluczowe funkcje, takie jak routing, dyrektywy, dwukierunkowe wiązanie danych, modele, Wtrysk zależności, testy jednostkowe itp [56]}
  • jest modularna
  • Można je konserwować, gdy rozmiar projektu wzrasta.]}
  • jest szybki
  • dwukierunkowe powiązanie danych Przyjazny odpoczynek Wzorce oparte na MVC
  • Głębokie Linkowanie
  • szablon
  • Walidacja wbudowanego formularza
  • Dependency Injection
  • lokalizacja
  • Pełne Środowisko Testowe
  • Komunikacja Z Serwerem

I wiele więcej

Tutaj wpisz opis obrazka

Myślę, że to pomaga.

Więcej można znaleźć-

 12
Author: Abrar Jahin,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:03:02

Jquery :-

jQuery is a lightweight and feature-rich JavaScript Library that helps web developers
by simplifying the usage of client-side scripting for web applications using JavaScript.
It extensively simplifies using JavaScript on a website and it’s lightweight as well as fast.

So, using jQuery, we can:

easily manipulate the contents of a webpage
apply styles to make UI more attractive
easy DOM traversal
effects and animation
simple to make AJAX calls and
utilities and much more… 

AngularJS :-

AngularJS is a product by none other the Search Engine Giant Google and it’s an open source
MVC-based framework(considered to be the best and only next generation framework). AngularJS
is a great tool for building highly rich client-side web applications.

As being a framework, it dictates us to follow some rules and a structured approach. It’s
not just a JavaScript library but a framework that is perfectly designed (framework tools
are designed to work together in a truly interconnected way).

In comparison of features jQuery Vs AngularJS, AngularJS simply offers more features:

Two-Way data binding
REST friendly
MVC-based Pattern
Deep Linking
Template
Form Validation
Dependency Injection
Localization
Full Testing Environment
Server Communication
 3
Author: Jamshaid K.,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-23 18:52:49