• Как эффективно изучать angular js?

    SternMore
    @SternMore
    Работаю над GrabDuck.com
    Не знаю на счет эффективного способа, могу поделиться своим.

    Когда мы мигрировали наш проект GrabDuck на angularjs с js+jquery, стоял такой же вопрос - как быстро понять что такое angular и начать его использовать. Совет N1, который все дают - "читаем доки" нам не подошел. Очень трудно понять какие-то детали, не понимая что такое angular в целом. Инфы очень много и в голове от всего каша. Наверное можно так выучить и даже стать реальным профессионалом, но быстро сделать это точно не получится. Вообщем метод хорош для любителей академических подходов.

    Что делали мы:
    1. пройти пару туториалов, лучше видео - получается быстрее. (как пример Egghead.io - AngularJS)
    2. начать что-то делать самому, лучше уже реальное, обращаясь к туториалам из #1, за подсказками. Тут уже вы готовы начать посматривать в сторону официальной доки
    3. Через какое-то время, вы почувствуете себя комфортно делать что-то на уровне пройденных туториалов, без использования их как подсказки. Тут уже без чтения доков, для прояснения каких-то вопросов, не обойтись. будет много рефакторинга вашего предыдущего кода, потому что к этому моменту у вас появится свое чувство стиля и вы увидите как все неправильно было сделано изначально. )
    4. Последний пункт наступает примерно через несколько месяцев работы. Внезапно вы обнаруживаете, что ваше angular приложение работает чертовски медленно и нужно с этим что-то делать. Читайте статьи о том как оптимизировать (как пример, который нашел на GrabDuck - 11 Tips to Improve AngularJS Performance). тут уж вам, хочется того или нет, прийдется понять как работает angular изнутри и стать настоящим профи в этом фреймворке.

    Надеюсь информация была полезна. :-)
    Ответ написан
    Комментировать
  • Какую UI библиотеку выбрать для Angular 2?

    khusamov
    @khusamov
    ReactJS, NodeJS, TypeScript, Sencha ExtJS
    Вот такой поиск https://yandex.ru/search/?text=ui%20for%20angular%...
    дал такой результат:

    Angular Material 2
    Fuel-UI
    Kendo UI
    ng-bootstrapng-lightning
    ng2-bootstrap
    Onsen UI
    Prime Faces
    Semantic UI
    Vaadin

    www.jqwidgets.com/angular
    www.primefaces.org/primeng
    https://onsen.io/v2/docs/guide/angular2/
    stackoverflow.com/questions/39395359/angular-2-ui-...

    Уже есть что выбрать для UI под Angular2
    Ответ написан
    Комментировать
  • Как правильно управлять данными в angular 1.x?

    uaKorona
    @uaKorona
    Front-End разработчик
    Хорошо, когда зоны ответственности распределены:
    Контроллер отвечает за отображение данных и пользовательский ввод.
    А сервис отвечает за обновление и хранение данных.

    В таком подходе очень лего реализовать такие паттерны, как отмена изменений пользователя и возврат к предыдущей версии. Так как она всегда хранится в сервисе.
    Или например, предупреждать пользователя, что есть несохраненные данные - перед уходом с формы, так как можно сравнить модель из контроллера с версией модели в сервисе.

    По хорошему - должна быть одна точка изменений данных -> Сервис, а контроллер должен работать с их копией
    Ответ написан
    5 комментариев
  • Как правильно управлять данными в angular 1.x?

    alexiusp
    @alexiusp
    senior frontend developer
    Можно сделать по-разному. Главное с самого начала решить, кто будет вносить изменения в данные. Я бы рекомендовал, чтобы изменения вносились только в одном месте (например в указанном в примере контроллере). Если у вас данные будут менять все кому не лень - другие сервисы, директивы, другие вложенные контроллеры, то вы очень скоро потеряете контроль над тем, что происходит у вас в приложении и откуда растут ноги у изменений. Подход с единственным ответственным за изменение данных сильно облегчает жизнь в приложениях со сложной архитектурой, хотя и требует иногда лишнего прокидывания обработчиков событий вверх по иерархии компонентов.
    Ответ написан
    5 комментариев