Учебник по фреймворку Angular
Основы
Введение в фреймворк
Компонентый подход
Установка фреймворка
Создание проекта
Структура проекта
Структура рабочий папки
Файл макета
Файл общих стилей
Структура компонента
Файл с версткой компонента
Файл стилей компонента
Файл с классом компонента
Темплейт
Интерполяция
Свойства класса в темплейте
Свойства класса в атрибутах
Свойства-массивы в темплейте
Свойства-объекты в темплейте
Методы класса в темплейте
Шаблонные переменные
Привязка к свойствам и атрибутам
Условия
Директива if
Операторы в директиве if
Конструкция if
Операторы в конструкции if
Конструкция else
Конструкция else-if
Конструкция switch-case
Тег ng-template
Синтаксический сахар
Циклы
Директива for
Конструкция for
Индексы циклов
Первая итерация
Последняя итерация
Четная итерация
Нечетная итерация
События
Привязка обработчиков
Параметры обработчиков
Объект event в обработчике
Объект event и параметры
Реактивность
Реактивность циклов
Реактивность условий
Двусторонняя привязка
Стилизация
Стили компонента
Привязка CSS классов
Массовая привязка CSS классов
Привязка CSS стилей
Массовая привязка CSS стилей
Динамическое изменение стилей
Каналы
Введение
Перевод в верхний регистр
Перевод в нижний регистр
Обрезание строки
Форматирование дат
Форматирование чисел
Форматирование валюты
Цепочки каналов
Список каналов
Компоненты
Дочерний компонент
Передача данных
Передача свойств
Множественный вызов компонента
Вызов компонента в цикле
Передача текста
Передача в сеттер
Испускание данных из потомка
Двусторонняя привязка событий
todo: как то сложновато
Смена тега
Жизненный цикл компонентов
Сервисы
Роутинг
Введение
Создание нового проекта
Создание компонентов
Настройка базового роутинга
Тег для роутинга
Ссылки для роутинга
Стилизация активных ссылок
Точное совпадение адресов
Параметры маршрутов
Значения параметров маршрутов
Использование параметров маршрутов
Параметры маршрутов в ссылках
Проблема с переключением ссылок
Программная навигация
Захват всех URL
Порядок маршрутов
Переадресация
Дочерние маршруты