• Контекст
• Потеря контекста
• Замыкания, запоминание значения переменной по замыканию
• Колбеки
• Bind, call, apply
• Передача по ссылке и по значению
• Разбираемся со стандартами javascript
• Разбираем продвинутые фишки современных стандартов
• Зона видимости переменной с let и const
• Подробно о стрелочных функциях
• Деструктуризация
• Spread операторы
• Поддержка современных стандартов браузерами
• ES modules
• Common.js модули
• Разбиваем код на модули
• Common.js vs Es Modules
• Геттеры и сеттеры
• Пишем пародию на реактивность в современных фреймворках
• ООП в JavaScript
• Классы
• Наследование
• Классы vs функция конструктор
• Обработка ошибок (try, catch)
• Базовая информация о современных фреймворках
• Виды web-приложений и их роль в современной разработке
• Императивность vs декларативность
• Пример сложного решения задачи на jquery и его элегантный аналог на vue
• Реактивность
• Проблемы реактивности
• Виртуальный DOM
• Экземпляр vue
• Шаблоны
• Основные директивы
• Компоненты (регистрация, переиспользование)
• Жизненный цикл компонента
• Однонаправленный поток данных
• События
• Параметры компонентов и валидация
• Стили во vue
• Изолирование стилей
• Глобальные стили
• Изменение стилей готовых компонентов и проблемы с ними
• Работа с классами и инлайн стилями
• Работа с формами
• Валидация форм
• Работаем с библиотекой vue-validate
• Переиспользование форм
• Выводим ошибки возвращаемые сервером на поля формы
• Подключаем vue-router и делим приложение на страницы
• Создание маршрутов
• Работа с параметрами
• Хуки роутера
• Добавляем централизованное хранилище vuex в приложение
• Состояние, Геттеры, мутации экшены
• Разбиваем и выносим данные приложения
• Создаем модули склада vuex
• Переиспользование модулей
• Работа с сервером и данными
• Авторизация приложения, работа с токенами
• Ловим и обрабатываем ошибки
• API функции
• Обсуждаем темы, которые вам интересны
• Ответы на ваши вопросы
• Обобщаем куда и как двигаться дальше