В прошлом фронтальная разработка (веб-или мобильная) в основном использовалась JQuery + Native JS. Если используются некоторые фронтовые каркасы пользовательского интерфейса, это также может предоставить некоторые API для использования. Более того, многие рамки пользовательского интерфейса основаны на jQuery, поэтому пролет от jQuery до angularjs относительно большой. Я изучал angularjs некоторое время. Давайте поговорим об общем опыте:
О сравнении с jQuery
Прежде всего, Angular - это структура MVC. Разница между ним и jQuery заключается в том, что первое стремится к отделению кода MVC и использует модель, контроллер и представление для организации кода. Последний предоставляет вам множество функций API. Вам не нужно писать много местных JS для достижения более сложных эффектов, таких как анимация, $. Если вам нужно написать Native JS, том кода будет относительно большим;
Во -вторых, jQuery не определяет, как организован ваш код. Вы можете поместить его в отдельный файл JS для справки, или вы можете напрямую написать его на странице, чтобы обернуть тегами сценария или даже написать непосредственно в теге HTML в inline. Тем не менее, AngularJS разделит HTML -страницу на несколько модулей, каждый модуль может иметь свой собственный объем, обслуживание и директива, а связь может проводиться между модулями, но общая структура относительно ясна, то есть метод организации кода является модульным.
Наконец, идея JQuery состоит в том, чтобы сначала разработать страницу, а затем выполнить операции DOM на существующей странице и отобразить страницу. Тем не менее, угловой вид может быть просто структурой, а операции DOM или мониторинг времени внедряются в Директиве. В общем, это редко писается непосредственно самостоятельно, если вы слушаете модель. Представление также изменится после изменения модели.
О применимых случаях
JQuery должен подходить для большинства веб -разработок, а также есть jQueryMobile на мобильной стороне. Некоторые люди говорят, что AngularJS более подходит для спа -салона (я лично считаю, что SPA на мобильных телефонах может вызвать проблемы с производительностью, потому что его грязный механизм проверки повлияет на производительность). На веб-стороне некоторые приложения CRUD или программное обеспечение для управления все еще могут быть использованы (конечно, понимание здесь может быть не точным, и вы будете понимать и использовать его больше при углубленном обучении).
О комбинации пользовательского интерфейса
Разработка любого продукта требует использования интерфейса пользовательского интерфейса. В настоящее время многие пользовательские интерфейсы основаны на jQuery, что означает, что если вы хотите использовать AngularJS и эти компоненты пользовательского интерфейса, вам необходимо использовать директиву AngularJS для переписывания некоторых компонентов. Этот процесс довольно неприятный. К счастью, Angular предоставляет нам некоторые компоненты пользовательского интерфейса, которые можно использовать (веб-сторона в основном объединяет компоненты Bootstrap Front-End), http://angular-ui.github.io/, а на мобильной стороне он в основном сочетает в себе ионную структуру http://ionicframework.com/. Однако при разработке угловых, многие фронтальные каркасы HTML5 постепенно интегрировали версии AngularJS для использования.
Об особенностях angularjs
1. ДИВКАНСКОЕ ПРЕДЛОЖЕНИЕ ДАННЫХ: это может быть его наиболее захватывающей функцией. Данные слоя представления и данные модельного уровня являются двунаправленным связыванием. Если один из них изменится, другая сторона изменится соответственно. Вам не нужно писать код! (Подумайте о том, как это сделать в режиме jQuery)
2. Код модульный, а код каждого модуля имеет свой собственный объем, модель, контроллер и т. Д.
3. Мощная директива может инкапсулировать множество функций в теги HTML, атрибуты или комментарии и т. Д., что значительно красивые структуры HTML и повышает читабельность;
4. Внедрение зависимостей, придавая шаблону проектирования этого бэкэнд-языка коду переднего интерфейса, что означает, что код фронтального элива может улучшить возможности повторного использования и гибкости. В будущем модель может разместить большое количество операций на клиенте, а сервер предоставляет только источники данных и операции, которые другие клиенты не могут завершить;
5. Тестовая разработка, Angularjs стремится начать с этого. Приложения, разработанные с использованием Angular, могут легко провести модульное тестирование и сквозное тестирование, что решает недостатки традиционного кода JS, которые трудно проверить и поддерживать.
Вышеупомянутое заключение, сделанное путем изучения AngularJs в течение определенного периода времени. Некоторые из областей могут быть опущены. Это не имеет значения. Далее мы разработаем один из моментов и изучим шаг за шагом.