Pull to refresh
  • by relevance
  • by date
  • by rating

Разбираемся с синтаксисом шаблонов в Angular2

JavaScript *Angular *

Многие впервые увидев синтаксис шаблонов Angular2 начинают причитать, мол ужас какой сделали, неужто нельзя было как в Angular1 хотя-бы. Зачем нужно было вводить это разнообразие скобочек, звездочек и прочей ерунды! Однако при ближайшем рассмотрении все становится куда проще, главное не пугаться.

Так как шаблоны в AngularJS являются неотъемлемой его частью, важно разобраться с ними в самом начале знакомства с новой версии этого фреймворка. Заодно обсудим, какие преимущества дает нам данный синтаксис по сравнению с angular 1.x. Причем лучше всего будет рассматривать это на небольших примерах.

Данная статья во многом основана на материалах этих двух статей:



Для того, что бы упростить подачу материала, давайте разберемся. Под AngularJS я буду подразумевать всю ветку Angular 1.x, в то время как под Angular2 — ветку 2.x.

Так же спасибо господину Bronx за ценное дополнение, которое я включил в текст статьи.

Примечание: вечер выходного дня, потому о опечатках и т.д. сообщайте в личку. Премного благодарен и приятного чтения.
Читать дальше →
Total votes 67: ↑64 and ↓3 +61
Views 57K
Comments 64

Angular 1.5: Компоненты

JavaScript *Angular *

Не так давно увидел свет релиз Angular 1.5, который привносит множество интересных нововведений. Важной особенностью

данной версии является то, что это первый из череды релизов, который должен сгладить концептуальный разрыв между Angular1.x и Angular2.x. Для людей, у которых есть необходимость вести проекты на Angular сейчас, но в будущем планируется постепенная миграция на Angular2, это очень радостная новость.

В данной статье я постараюсь осветить основные нововведения:

  • Компоненты!
  • Односторонние биндинги!
  • Мульти-слот трансклюды!

Полный список изменений доступен в репозитории ангуляра. Так же нас ждет небольшой примерчик использования перечисленных фич.
Читать дальше →
Total votes 21: ↑21 and ↓0 +21
Views 97K
Comments 18

Порог вхождения в Angular 2 — теория и практика

JavaScript *Angular *Laravel *
Tutorial
Добрый день, дорогие хабра: жители, читатели, писатели, негативно-комментаторы.

В качестве вводной части и чтобы снять некоторые вопросы немного расскажу о себе. Меня зовут Тамара. Оужас, я девушка! Кого это пугает — закрывайте статью и не читайте.

Для остальных: у меня за плечам незаконченный лет 10 назад МИРЭА, факультет кибернетики. Но все эти 10 лет практики сложились таким образом, что по большей части я занималась рекламой и в перерывах случалось работать в различных стартапах, связанных с интернетом и не только.

image

В общем, если коротко, то чукча не программист, чукча просто душой и сердцем уважает тех, кто из непонятных строчек кода делает офигенные вещи, которые хорошо работают.
Читать дальше →
Total votes 72: ↑55 and ↓17 +38
Views 123K
Comments 144

Пробрасываем роуты Angular 2 через роутер Laravel 5

Angular *Laravel *
Sandbox

После прочтения статьи "Порог вхождения в Angular 2 — теория и практика" у меня появилось желание показать, как можно пробросить все роуты Angular 2 через роутер Laravel 5.

Идея следующая

  • в директории resources/views/backend будет лежать представление, являющееся точкой входа для всех роутов Angular 2. Для каждого роута Angular 2, роутер Laravel 5 будет нас перенаправлять на это представление;
  • под каждый Angular 2 роут в директиве @RouteConfig нам придется создать копию в роутере Laravel;
  • все роуты Angular 2, по которым подтягиваются шаблоны, будут иметь вид вида /templates/SomeComponent.main, и будут запрашиваться роутером Laravel 5 по пути вида resources/views/frontend/SomeComponent/main.blade.php
Читать дальше →
Total votes 8: ↑4 and ↓4 0
Views 17K
Comments 25

Angular — это паттерн проектирования

JavaScript *Angular *
Translation
Со стремительным приближением Angular 2.0, параллельно существующим с большим количеством других frontend-фреймворков, в воздухе витает множество волнений по поводу предстоящих затрат (как временных, так и денежных), связанных с переводом своих проектов на новую версию. Как вы думаете, есть ли у разработчиков желание изучить еще один новый фреймворк?

Давайте разбираться. Прошу под кат.
Читать дальше →
Total votes 30: ↑15 and ↓15 0
Views 20K
Comments 24

Angular 2 Beta, обучающий курс «Тур героев» часть 1

Website development *JavaScript *Angular *
Sandbox

Часть 1 Часть 2 Часть 3 Часть 4


Вступление


Эта статья основана на документации Angular 2 и представляет собой перевод двух статей — Вступление и Редактор героя.


Используется Angular 2 release is beta.12.


Тур героев: обзор


Наш великий план — построить приложение для кадрового агентства героев. Даже героям нужна работа!


Конечно, в этом учебнике будет рассмотрены только основные понятия. То, что мы создаем будем иметь много функций, которые мы ожидаем найти в полномасштабных, ориентированных на данные приложениях: получение и отображение списка героев, редактирование информации о выделенном герое, навигация между различными представления данных о героях.

Читать дальше →
Total votes 18: ↑13 and ↓5 +8
Views 60K
Comments 11

Angular 2 и внедрение зависимостей

JavaScript *Angular *TypeScript *

Вторая версия ангуляра всё ближе к релизу и всё больше людей начинают интересоваться им. Пока что информации по фреймворку не так много, особенно на русском языке, и всё чаще начинают возникать вопросы по некоторым темам.


Одна из тем, вызывающая много вопросов — внедрение зависимостей. Некоторые люди не сталкивались с подобной технологией. Другие не до конца понимают, как она работает в рамках Angular 2, так как привыкли к другим реализациям, которые бывают в других фреймворках.


А разгадка кроется в том, что DI во втором ангуляре действительно несколько отличается от других, и связано это в первую очередь с общим подходом и философией 2-й версии. Заключается она в том, что сущностями из которых строится всё приложение, являются компоненты. Сервисный слой, роутер, система внедрения зависимостей — вторичны и они имеют смысл только в рамках компонента. Это очень важный момент, который лежит в основе понимания архитектуры нового фреймворка.

Читать дальше →
Total votes 28: ↑25 and ↓3 +22
Views 72K
Comments 53

Angular 2 Beta, обучающий курс «Тур героев» часть 2

Website development *JavaScript *Angular *
Translation
Tutorial

Часть 1 Часть 2 Часть 3 Часть 4


Нужно больше героев


Нашей истории необходимо больше героев. Мы расширим наше приложение Тур героев, чтобы отобразить список героев, в котором пользователь может выбрать героя, и посмотреть детальную информацию о нем.

Читать дальше →
Total votes 10: ↑8 and ↓2 +6
Views 21K
Comments 6

Osliki.Net – социальная доставка

Self Promo
Osliki.Net

Исходный код доступен на GitHub. Используется full-stack JavaScript инструментарий Node.js + Angular2 + MongoDB, сборка Gulp.js, тестирование Mocha, хостинг DigitalOcean, платежи PayPal API.

Этапы процесса создания проекта запечатлены на LiveCoding.

Суть проекта в том, что люди, которые часто путешествуют, могут доставлять другим практически любые вещи в своем багаже. Например вы живете в США и вам срочно нужны какие-либо лекарства или документы из России. На Осликах можно найти человека, который как раз едет из Москвы в Нью-Йорк. Он может помочь за деньги или бесплатно.

Таким образом, пользователи могут выступать и в качестве клиентов, которым нужна доставка, и в качестве путешественников, которые могут доставлять что-либо. Путешественник имеет возможность выставлять счета на оплату клиенту, service fee, вместе с PayPal fee, составляет около 10%.

Проект будет интересен в первую очередь:
  • людям, которые находятся далеко от дома (тоска по родной еде типа халвы, шоколада, кефира и т.д., необходимость в специфичных лекарствах)
  • тем кто хочет сэкономить на покупке товаров. Один подписчик на livecoding, например, утверждал что во Франции электроника дешевле чем в Британии :)
  • студентам, которые учатся вдали от дома, и сезонно перемещаются от места учебы до дома и обратно
  • дальнобойщикам, стюардессам, коммивояжерам вообщем всем тем, кто по роду деятельности часто путешествует и не прочь на этом дополнительно подзаработать.

Читать дальше →
Total votes 5: ↑4 and ↓1 +3
Views 2.2K
Comments 23

Angular 2 Beta, обучающий курс «Тур героев» часть 3

Website development *JavaScript *Angular *
Translation
Tutorial

Часть 1 Часть 2 Часть 3 Часть 4


Наше приложение растет. В этой части сосредоточимся на компонентах, пригодных для повторного использования, а также на передаче данных компонентам. Давайте отделим список героев в отдельный компонент и сделаем этот компонент пригодным для повторного использования.

Читать дальше →
Total votes 13: ↑10 and ↓3 +7
Views 16K
Comments 12

Angular 2 Beta, обучающий курс «Тур героев» часть 4

Website development *JavaScript *Angular *
Translation

Часть 1 Часть 2 Часть 3 Часть 4


Сервисы


Тур героев развивается, и мы ожидаем добавление новых компонентов в ближайшем будущем.


Нескольким компонентам нужен доступ к данным героев, и мы не хотим копировать и вставлять один и тот же код снова и снова. Вместо этого мы создадим один сервис передачи данных, который можно будет в дальнейшем повторно использовать, и научимся использовать его в компонентах, которые в нем нуждаются.

Читать дальше →
Total votes 16: ↑13 and ↓3 +10
Views 17K
Comments 4

Angular 2 несёт мир в галактику фронтенда

JUG Ru Group corporate blog Website development *JavaScript *Angular *
React, Redux, Angular, JavaScript, Dart — мир фронтенда находится на грани полномасштабной войны адептов разных технологий. Настало время героев — кто спасёт мир в веб-разработке и станет главным героем новой эпохи?

Кажется, об этом знает фронтенд-тимлид компании Wrike Евгений Гусев. Нам удалось отвлечь его от работы и задать несколько вопросов, которые так волнуют тех, кто уже успел попробовать Angular 2 или ещё только слышал о нём. Евгений рассказал нам о  преимуществах Angular 2, скорости развития проекта, трудностях и радостях перехода на него. Мы успели обсудить React, JavaScript и Dart, — в общем, сравнить и изменить все силы. Впрочем, хватит тизеров. Магистр, вам слово!



— Расскажите о себе, о том, с чем работаете и как попали в Wrike?

Меня зовут Евгений, и я пишу на Dart и Angular 2. Наверное, странное начало, но надо расставить все точки над «i». Работаю фронтенд-тимлидом в компании Wrike, а начинал с С++ под микроконтроллеры, писал немного на том и на этом, потом дошёл до C#. Когда перешёл в Dell, начал плотнее общаться с фронтендом, причём самым банальным образом: кому-то нужно было писать UI, а никого не было. Причём писать начал сразу на CoffeeScript (да-да!). Годы шли, и я перешёл в компанию, в которой я сейчас и работаю, а именно Wrike. Мы разрабатываем крупную SaaS-платформу для управления задачами и совместной работы. Сейчас у нас почти 30 фронтенд-девелоперов, плюс команда верстальщиков, и мы, как Алиса из небезызвестной сказки, всё растём и растём.

Wrike прошёл довольно большой путь: от совсем небольшого стартапа до двух миллионов строчек кода за 9+ лет разработки. Конечно, за это время у нас сменилась куча фреймворков и технологий. Всё начиналось с Dojo, потом Ext.js. Мы писали на Polymer 0.5, и, когда он стал deprecated (с выходом версии 1.0), перед нами встал вопрос — что же выбрать? Собственно о том, какие у нас были варианты, и почему мы в итоге выбрали Angular 2, я и расскажу в своём докладе.
Читать дальше →
Total votes 35: ↑27 and ↓8 +19
Views 43K
Comments 102

Angular2-like регистрация компонентов и зависимостей для knockoutjs

JavaScript *
Sandbox
Добрый день.

Понравилась атрибутная регистрация компонентов в angular2 и захотелось сделать подобное в проекте с knockoutjs.

@Component({
    selector: "setup-add-edit-street-name",
    template: require("text!./AddEditStreetName.tmpl.html"),
    directives: [BeatSelector]
})
export class AddEditStreetNameComponent extends AddEditModalBaseComponent<StreetNameViewModel> {
    constructor(@Inject("params") params, streetNameService: StreetNameService) {
        super(params, streetNameService);
    }
    
    location = ko.observable()
}

Компоненты в нокауте появились довольно давно. Тем не менее, отсутствие встроенной поддержки dependency injection, как и необходимость отдельной регистрации компонент несколько раздражала.
Читать дальше →
Total votes 9: ↑7 and ↓2 +5
Views 3.2K
Comments 2

Пишем ХабраКвест на ASP.NET Core и Angular2

Website development *Entertaining tasks .NET *ASP *Angular *
Tutorial
Каждый раз с выходом нового фреймворка, хочется попробовать его в деле и написать на нем какое-то приложение. В прошлый раз отлично зашел формат квеста. По этому предлагаю посмотреть что поменялось за почти полтора года и написать еще один квест— и фреймворки посмотрим, и поиграть можно.
Результат:
сорсы на гитхабе для тех, кому интересно посмотреть на исходники
линк на квест для тех, кому интересно что получилось или потратить свое время на еще один логический квест.

Под катом описан полный процесс от создания проекта до его развертывания.
Читать дальше →
Total votes 39: ↑34 and ↓5 +29
Views 33K
Comments 63

Как я изобретал велосипед, или мой первый MEAN-проект

JavaScript *Node.JS *MongoDB *Angular *

Сегодня, в период стремительного развития веб-технологий, опытному фронтэнд-разработчику нужно всегда оставаться в тренде, каждый день углубляя свои познания. А что делать, если Вы только начинаете свой путь в мире веб? Вы уже переболели вёрсткой и на этом не хотите останавливаться. Вас тянет в загадочный мир JavaScript! Если это про Вас, надеюсь данная статья придётся к стати.

Читать дальше →
Total votes 39: ↑34 and ↓5 +29
Views 26K
Comments 9

Angular2: RC4 to RC5 Unit Tests Migration Guide

JavaScript *Angular *
Sandbox
image

Сразу скажу, что я не любитель Angular1, angular-way и иже с ними, потому как ребята из Angular таких делов наворотили, что иногда диву даешься. Тем не менее, их новое детище выглядит многообещающе. Да, Америку не открыли, но создали нечто, способное конкурировать с популярными современными фреймворками (React + Redux, Aurelia, и т.д.).

Есть и плюсы, и минусы, о которых уже написаны статьи и даже книги, но суть поста в другом.

RC5 вышел всего неделю назад и «порадовал» разработчиков многими изменениями, которые, возможно, и помогают в работе и упрощают жизнь, но заставят серьёзно попотеть над переписыванием уже написанного кода.
Читать дальше →
Total votes 19: ↑16 and ↓3 +13
Views 11K
Comments 28

Be King of your state with Angular2 State Machine

JavaScript *Angular *
Tutorial
image

Управление состоянием своего приложения — интересная и весьма важная задача для многих приложений. Ведь от этого зависит то, насколько внятно и вменяемо будет построен пользовательский интерфейс и насколько успешным будет само приложение.

Сегодня я хотел бы рассказать об одном интересном open-source проекте, который может облегчить работу с состояниями для тех, кто решил написать или переписать свое приложение на Angular2 и думает о том, переписывать ли ему логику управления состояниями заново или стоит что-либо поискать на просторах этих ваших интернетов.
Читать дальше →
Total votes 13: ↑10 and ↓3 +7
Views 7.1K
Comments 9

Представляем библиотеку right-angled, конструктор гридов для angular2

True Engineering corporate blog Open source *JavaScript *Angular *


Сегодня хотим рассказать о том, как мы решили отдать долг open source сообществу и создали библиотеку right-angled. Только вчера мы перевели ее в статус beta и решили поделиться этой отличной новостью с Хабрасообществом c самым первым.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Views 7.1K
Comments 9