![Archakov Blog](/img/default-banner.jpg)
- 187
- 6 699 964
Archakov Blog
Russia
Приєднався 12 лип 2015
Blog about programming in JavaScript, ReactJS, NodeJS
Vue 3 для начинающих / Разработка интернет-магазина Vue Sneakers
Наконец-то доделал курс по Vue 3 для начинающих, в котором мы будем разрабатывать полноценный проект Vue Sneakers (старый добрый React Sneakers, но улучшенный в плане дизайна, анимации и функционала) + хранить данные будем на бесплатном сервисе Mokky.
🧐 Для кого этот курс?
Курс предназначен для НАЧИНАЮЩИХ 👨🏻🎓, кто не знаком с Vue. Для ноченающех! Не для тру фронтенд девелоперов с опытом в 150 лет и познавших вселенную фронтенда, а для простых смертных.
Для тех, кто вообще не знаком с Vue и хочет понять, что это за фреймворк и как на нём создавать реальные приложения с передачей данных между компонентами, роутингом, запросами к бэкенду, а не просто тудушки.
В этом курсе мы не просто будем изучать Vue, но и разрабатывать приложение с роутингом, запросами на бэк, передачей данных между приложением, анимациями, изучим что такое Composition API / Options API и т.д.
⏬ Мы поймём:
- Как работает Vue
- Научимся передавать данные между компонентами
- Делать запросы на бэк и обрабатывать JSON-данные
- Как делать переход между страницами с помощью Vue Router
- Как стилизировать приложение с помощью TailwindCSS
- Как сделать красивую и простую анимацию списков товаров, корзину и т.п.
⚙️ Стэк технологий:
- Vue 3
- Vue Router
- TailwindCSS
- Axios
- @formkit/auto-animate
- Composition API / Options API
- ESLint
- Prettier
💾 Ссылка на исходник и дизайн: t.me/archakovblog/586
🎉 Как задеплоить Vue Sneakers: ua-cam.com/video/dnfdrvuHFks/v-deo.html
👟 Ссылка на JSON-товаров: 604781a0efa572c1.mokky.dev/items
🔗 Ссылки на мои ресурсы:
- Telegram-канал: t.me/archakov_im
- Поддержать донатом: boosty.to/archakov_blog
- VK: archakov_im
- Личный блог: archakov.im
- GitHub: github.com/Archakov06
- Моё резюме: career.habr.com/archakovim
⏰ Таймкоды:
00:00:00 Введение
00:11:27 Подготавливаем окружение среды разработки
00:15:40 Создание и разбор стартового проекта
00:25:00 Пробуем написать свой код на Vue
00:37:50 Что такое Options API на примере счётчика
00:41:50 Переделываем на Composition API
00:53:50 Как прокинуть данные в компонент
01:05:05 Начинаем разработку проекта / Установка TailwindCSS
01:11:45 Изучаем дизайн приложения
01:17:20 Вёрстка шапки (Header)
01:43:00 Вёрстка карточки товара и списка (Card + CardList)
02:14:40 Вёрстка корзины (Drawer)
02:47:43 Разработка поиска + фильтрация товаров (вёрстка + функционал)
02:56:30 Используем сервис MOKKY.DEV для хранения данных
03:50:00 Разработка закладок
04:08:30 Как прокидывать данные между компонентами без пропсов (provide / inject)
04:51:00 Разработка функционала корзины (открытие, добавление товаров, создание заказа)
06:11:35 Прикручиваем анимацию в приложении (auto-animate)
06:19:10 Подключаем Vue Router
06:45:23 Делаем отдельную страницу закладок
07:12:30 Доделываем корзин / Статус: "Заказ офомлен"
07:26:30 Подводим итоги
🧐 Для кого этот курс?
Курс предназначен для НАЧИНАЮЩИХ 👨🏻🎓, кто не знаком с Vue. Для ноченающех! Не для тру фронтенд девелоперов с опытом в 150 лет и познавших вселенную фронтенда, а для простых смертных.
Для тех, кто вообще не знаком с Vue и хочет понять, что это за фреймворк и как на нём создавать реальные приложения с передачей данных между компонентами, роутингом, запросами к бэкенду, а не просто тудушки.
В этом курсе мы не просто будем изучать Vue, но и разрабатывать приложение с роутингом, запросами на бэк, передачей данных между приложением, анимациями, изучим что такое Composition API / Options API и т.д.
⏬ Мы поймём:
- Как работает Vue
- Научимся передавать данные между компонентами
- Делать запросы на бэк и обрабатывать JSON-данные
- Как делать переход между страницами с помощью Vue Router
- Как стилизировать приложение с помощью TailwindCSS
- Как сделать красивую и простую анимацию списков товаров, корзину и т.п.
⚙️ Стэк технологий:
- Vue 3
- Vue Router
- TailwindCSS
- Axios
- @formkit/auto-animate
- Composition API / Options API
- ESLint
- Prettier
💾 Ссылка на исходник и дизайн: t.me/archakovblog/586
🎉 Как задеплоить Vue Sneakers: ua-cam.com/video/dnfdrvuHFks/v-deo.html
👟 Ссылка на JSON-товаров: 604781a0efa572c1.mokky.dev/items
🔗 Ссылки на мои ресурсы:
- Telegram-канал: t.me/archakov_im
- Поддержать донатом: boosty.to/archakov_blog
- VK: archakov_im
- Личный блог: archakov.im
- GitHub: github.com/Archakov06
- Моё резюме: career.habr.com/archakovim
⏰ Таймкоды:
00:00:00 Введение
00:11:27 Подготавливаем окружение среды разработки
00:15:40 Создание и разбор стартового проекта
00:25:00 Пробуем написать свой код на Vue
00:37:50 Что такое Options API на примере счётчика
00:41:50 Переделываем на Composition API
00:53:50 Как прокинуть данные в компонент
01:05:05 Начинаем разработку проекта / Установка TailwindCSS
01:11:45 Изучаем дизайн приложения
01:17:20 Вёрстка шапки (Header)
01:43:00 Вёрстка карточки товара и списка (Card + CardList)
02:14:40 Вёрстка корзины (Drawer)
02:47:43 Разработка поиска + фильтрация товаров (вёрстка + функционал)
02:56:30 Используем сервис MOKKY.DEV для хранения данных
03:50:00 Разработка закладок
04:08:30 Как прокидывать данные между компонентами без пропсов (provide / inject)
04:51:00 Разработка функционала корзины (открытие, добавление товаров, создание заказа)
06:11:35 Прикручиваем анимацию в приложении (auto-animate)
06:19:10 Подключаем Vue Router
06:45:23 Делаем отдельную страницу закладок
07:12:30 Доделываем корзин / Статус: "Заказ офомлен"
07:26:30 Подводим итоги
Переглядів: 135 590
Відео
Продвинутый Fullstack-курс разработки облачного хранилища на NextJS + NestJS (Middle / Senior)
Переглядів 53 тис.Рік тому
Наконец-то доделал курс по Vue 3 для начинающих, в котором мы будем разрабатывать полноценный проект Vue Sneakers (старый добрый React Sneakers, но улучшенный в плане дизайна, анимации и функционала) хранить данные будем на бесплатном сервисе Mokky. 🔗 Следите за обновлениями и информацией в: - Telegram-канале: t.me/archakov_im - VK: archakov_im - Личном блоге: archakov.im - GitHub: githu...
Прекрати использовать useMemo! Топ ошибок Junior/Middle/Senior React-разработчиков
Переглядів 25 тис.Рік тому
Излил там всю боль и показал на реальных примерах из предыдущих работ и нынешней, как неправильно юзают хук useMemo ⏰ Таймкоды: 00:00:00 Начало Плохие примеры: 00:00:31 Первый 00:02:18 Второй 00:03:58 Третий 00:04:53 Четвертый 00:05:21 Пятый 00:05:37 Шестой 00:06:12 Седьмой 00:07:37 Когда хорошо использовать useMemo / React.memo 00:09:30 Подводим итог Обязательно посмотрите эти два видео: useMe...
React Query за 10 минут! Быстрый курс
Переглядів 49 тис.Рік тому
В этом ролике я расскажу о том, что такое React Query, как делать запрос на бэкенд, пагинацию, отправку POST запроса (мутации) и расскажу про плюсы и минусы этой библиотеки. Всё это за 11 минут! ⏰ Таймкоды: 00:00:00 Начало 00:00:46 Пишем код с помощью Axios 00:02:47 Переписываем на React Query используя useQuery 00:04:50 Делаем пагинацию useState useQuery 00:06:00 Крутая фича с помощью refetchO...
Не делай такое с useState! Топ 5 ошибок junior React-разработчика
Переглядів 49 тис.Рік тому
Часто начинающие React-разработчики используют хук или неправильно или не по назначению. В этом видео мы попытаемся разобраться с самыми популярными ошибками/багами с использованием useState и научимся их исправлять. ⏰ Таймкоды: 00:00:00 Начало 00:00:58 useState setInterval/setTimeout 00:04:48 Работа со старым стейтом 00:08:08 Обращение к undefined внутри стейта 00:14:25 Не надо хранить в useSt...
React Intersection Observer (scroll + lazy-load картинок)
Переглядів 24 тис.Рік тому
Представьте, что вам нужно определить, что какой-то конкретный попал в область вашего экрана на 10% или 100%, после чего необходимо выполнить какое-то действие? Например, анимировать элемент. React Intersection Observer идеально справится с этой задачей! Нужно определить, что пользователь дошел до конечного скролла? Юзай Intersection Observer. Нужно сделать ленивую подгрузку картинок? Вперёд вм...
Разработай 6 проектов на ReactJS (для начинающих)
Переглядів 247 тис.Рік тому
В этом видео я тебе покажу как разработать 6 разных ReactJS проектов уровня Junior. Данное видео подойдёт для тех, кто только недавно познакомился с ReactJS и хочет добавить к себе в портфолио проекты. Видео по деплою: ua-cam.com/video/-pJN9faoa8E/v-deo.html 📚 GitHub-репо: t.me/archakov_im/534 🔗 Следите за обновлениями и информацией в: - Telegram-канале: t.me/archakov_im - VK: archakov_i...
React Native для начинающих за 2 часа [2022] ! Мобильное приложение на JavaScript
Переглядів 147 тис.Рік тому
В данном курсе ты научишься создавать реальное мобильное приложение с помощью React Native (JavaScript ReactJS) Курс идеально подойдёт для фронтенд-разработчиков, которые уже знакомы с ReactJS. 👨🏻💻 Что необходимо знать перед началом? 1. useState, useEffect, JSX, Props 2. Уметь работать с HTTP-запросами (axios/fetch) 3. Знать ReactJS не менее 3-5 месяцев 4. Знать JS не менее 5-6 месяцев 👀 Чему ...
Полный Full Stack курс ReactJS + NodeJS для начинающих за 4 часа! (MongoDB, Express, React, NodeJS)
Переглядів 386 тис.2 роки тому
В этом видео ты научишься с нуля разрабатывать бэкенд на стэке MERN (MongoDB, Express, React, NodeJS) и подключать к фронтенду свой бэкенд. Также, к завершению урока ты научишься деплоить своё приложение на Heroku Vercel. Курс идеально подойдёт для новичков, которые впервые решили попробовать NodeJS. 👀 Чему ты научишься? 1. Разрабатывать свой бэкенд 2. Делать авторизацию и регистрацию backend f...
#27: 🍕 React Pizza v2 - Оптимизируем сборку JS-файла. Code Splitting, Tree Shaking, Reexport
Переглядів 31 тис.2 роки тому
React Pizza V2 - Это обновлённый курс на 2022 год, одного из самых популярных курсов 🔥 по ReactJS для начинающих. Более подробней тут: www.notion.so/React-Pizza-v2-REMASTERED-655fa3a5ea4f4bce8faeee2f28a8fb22 Исходники доступны в Boosty или в моём Telegram-канале: t.me/archakov_im ❤️ Поддержка: - Boosty (исходники, макеты): boosty.to/archakov_blog - Донаты: www.donationalerts.com/r/archakov_blog...
#26: 🍕 React Pizza v2 - Сохраняем пиццы в LocalStorage, грамотно структурируем папки проекта
Переглядів 20 тис.2 роки тому
React Pizza V2 - Это обновлённый курс на 2022 год, одного из самых популярных курсов 🔥 по ReactJS для начинающих. Более подробней тут: www.notion.so/React-Pizza-v2-REMASTERED-655fa3a5ea4f4bce8faeee2f28a8fb22 Исходники доступны в Boosty или в моём Telegram-канале: t.me/archakov_im ❤️ Поддержка: - Boosty (исходники, макеты): boosty.to/archakov_blog - Донаты: www.donationalerts.com/r/archakov_blog...
#25: 🍕 React Pizza v2 - Оптимизируем перерисовку компонентов с помощью useCallback и React.memo
Переглядів 16 тис.2 роки тому
React Pizza V2 - Это обновлённый курс на 2022 год, одного из самых популярных курсов 🔥 по ReactJS для начинающих. Более подробней тут: www.notion.so/React-Pizza-v2-REMASTERED-655fa3a5ea4f4bce8faeee2f28a8fb22 Исходники доступны в Boosty или в моём Telegram-канале: t.me/archakov_im ❤️ Поддержка: - Boosty (исходники, макеты): boosty.to/archakov_blog - Донаты: www.donationalerts.com/r/archakov_blog...
#24: 🍕 React Pizza v2 - TypeScript + Redux Toolkit
Переглядів 22 тис.2 роки тому
React Pizza V2 - Это обновлённый курс на 2022 год, одного из самых популярных курсов 🔥 по ReactJS для начинающих. Более подробней тут: www.notion.so/React-Pizza-v2-REMASTERED-655fa3a5ea4f4bce8faeee2f28a8fb22 Исходники доступны в Boosty или в моём Telegram-канале: t.me/archakov_im ❤️ Поддержка: - Boosty (исходники, макеты): boosty.to/archakov_blog - Донаты: www.donationalerts.com/r/archakov_blog...
#23: 🍕 React Pizza v2 - Типизация onClick, onChange и Event (TypeScript)
Переглядів 15 тис.2 роки тому
React Pizza V2 - Это обновлённый курс на 2022 год, одного из самых популярных курсов 🔥 по ReactJS для начинающих. Более подробней тут: www.notion.so/React-Pizza-v2-REMASTERED-655fa3a5ea4f4bce8faeee2f28a8fb22 Исходники доступны в Boosty или в моём Telegram-канале: t.me/archakov_im ❤️ Поддержка: - Boosty (исходники, макеты): boosty.to/archakov_blog - Донаты: www.donationalerts.com/r/archakov_blog...
#22: 🍕 React Pizza v2 - Типизируем пропсы (props) и хук useRef (TypeScript)
Переглядів 17 тис.2 роки тому
React Pizza V2 - Это обновлённый курс на 2022 год, одного из самых популярных курсов 🔥 по ReactJS для начинающих. Более подробней тут: www.notion.so/React-Pizza-v2-REMASTERED-655fa3a5ea4f4bce8faeee2f28a8fb22 Исходники доступны в Boosty или в моём Telegram-канале: t.me/archakov_im ❤️ Поддержка: - Boosty (исходники, макеты): boosty.to/archakov_blog - Донаты: www.donationalerts.com/r/archakov_blog...
#21: 🍕 React Pizza v2 - Используем TypeScript + ReactJS (практика)
Переглядів 20 тис.2 роки тому
#21: 🍕 React Pizza v2 - Используем TypeScript ReactJS (практика)
#20: 🍕 React Pizza v2 - Что такое TypeScript и зачем он нужен?
Переглядів 18 тис.2 роки тому
#20: 🍕 React Pizza v2 - Что такое TypeScript и зачем он нужен?
#19: 🍕 React Pizza v2 - Разбираемся подробней с роутером (useParams, useLocation, Outlet)
Переглядів 22 тис.2 роки тому
#19: 🍕 React Pizza v2 - Разбираемся подробней с роутером (useParams, useLocation, Outlet)
#18: 🍕 React Pizza v2 - Что такое ThunkAPI в RTK? Создаем селекторы
Переглядів 19 тис.2 роки тому
#18: 🍕 React Pizza v2 - Что такое ThunkAPI в RTK? Создаем селекторы
#17: 🍕 React Pizza v2 - Асинхронные экшены в RTK (createAsyncThunk), отлавливаем ошибки
Переглядів 32 тис.2 роки тому
#17: 🍕 React Pizza v2 - Асинхронные экшены в RTK (createAsyncThunk), отлавливаем ошибки
#16: 🍕 React Pizza v2 - Создаем Redux-логику для корзины, скрытие/показ popup-сортировки
Переглядів 44 тис.2 роки тому
#16: 🍕 React Pizza v2 - Создаем Redux-логику для корзины, скрытие/показ popup-сортировки
#15: 🍕 React Pizza v2 - Сохраняем параметры фильтрации в URL
Переглядів 33 тис.2 роки тому
#15: 🍕 React Pizza v2 - Сохраняем параметры фильтрации в URL
#14: 🍕 React Pizza v2 - Оптимизируем поиск с помощью Debounce, пагинация через Redux Toolkit
Переглядів 36 тис.2 роки тому
#14: 🍕 React Pizza v2 - Оптимизируем поиск с помощью Debounce, пагинация через Redux Toolkit
#13: 🍕 React Pizza v2 - Изучаем хуки useSelector, useDispatch, создаем свой Slice в Redux Toolkit
Переглядів 36 тис.2 роки тому
#13: 🍕 React Pizza v2 - Изучаем хуки useSelector, useDispatch, создаем свой Slice в Redux Toolkit
#12: 🍕 React Pizza v2 - Изучаем библиотеку Redux Toolkit
Переглядів 46 тис.2 роки тому
#12: 🍕 React Pizza v2 - Изучаем библиотеку Redux Toolkit
#11: 🍕 React Pizza v2 - Что такое контекст в React (useContext) и Props Drilling?
Переглядів 28 тис.2 роки тому
#11: 🍕 React Pizza v2 - Что такое контекст в React (useContext) и Props Drilling?
#10: 🍕 React Pizza v2 - Разрабатываем пагинацию и поиск пицц
Переглядів 48 тис.2 роки тому
#10: 🍕 React Pizza v2 - Разрабатываем пагинацию и поиск пицц
#9: 🍕 React Pizza v2 - Делаем функционал сортировки и фильтрации пицц
Переглядів 58 тис.2 роки тому
#9: 🍕 React Pizza v2 - Делаем функционал сортировки и фильтрации пицц
#8: 🍕 React Pizza v2 - Настраиваем адаптивную вёрстку, создаём страницу корзины
Переглядів 35 тис.2 роки тому
#8: 🍕 React Pizza v2 - Настраиваем адаптивную вёрстку, создаём страницу корзины
#7: 🍕 React Pizza v2 - Подключаем React Router v6, создаем компонент-скелетон
Переглядів 47 тис.2 роки тому
#7: 🍕 React Pizza v2 - Подключаем React Router v6, создаем компонент-скелетон
кто-нибудь разобрался с багом на 6:35 ?)
02:09:16
Кто встрял с тем что додо не отдает по ссылкам картинки, но не охота смотреть на одну и ту же пицулю: - находим какой ни будь фотобанк по запросу "фото пицца белый фон" - через инспектор кода копируем ссылку на картинку и втыкаем вместо додошной в свой джейсон. дрочево, но тоже тренирует руки.
typescript it`s a referee
хочу сказать большое спасибо за урок, было очень полезно. но блин, когда размер index.js перевалил за 125 строк у меня потёк мозг. можешь пожалуйста почаще делать декомпазицию кода? это бы значительно облегчило понимание того, что происходит на экране 🙏
46:46 ахахаххаха)) автор лучший спасибо за курс и старания!!
просчет суммы стоимости пицц - addItems: (state, action) => { state.items.push(action.payload); state.totalPrice = state.totalPrice + action.payload.price; }, why not ?
Спасибо.
А зачем nest если next это фулстек фреймворк (фронт и бэк). Почему сервер не реализовать так же на next?
Хотел начать учить нейтив, но после 20 мин воды передумал, русский контент так и держится на воде кроме Улби и Минина, кому там интересно что думают опытные разрабы насчёт Реакт CLI, если ты с ехпо будешь, так и говори про Ехпо, морочишь тут 10 мин про Реакт CLI, дизлайк!!!
Модалке разве нельзя сделать анимацию через класс? То есть сначала появляется блок модалки, а уже модалка анимируется например с opacity 0 до 1. Я примерно так и делаю без реакта. Сначала дисплей блок, потом идёт анимация. Скрытие в обратном порядке - анимация 0.3с, дисплей нон через время анимации. Там по моему даже есть метод чтобы без сеттаймаута дисплей нон приписывался, где то лайфхак видел.
Арчаков, большое спасибо! Лучший из лучших!
Для меня видео такого метрожа очень зашло, но думаю, стоит чередовать, делать и длинные и короткие проекты. Так как очень в таком видео очень много объяснений и примеров.
Спасибо
Первые 15 минут - это боль и страдания разработчика, отбивает всю охоту изучать😂
Спасибо
и все эти 7 часов разбиваются о неработающий tailwind. вопрос - а нафига тогда баян ? в топку. будем искать толкового препода
А безопасно ли давать айдишки аккаунтов автору?
Спасибо большое за курс. Для новичка как в JS, так и в Vue, очень хорошо объясняется терминология, за это дополнительный респект :)
Спасибо
{props.type.map((size) => (size === 1 ? <li>Тонкое</li> : ''))} {props.type.map((size) => (size === 0 ? <li>Традиционное</li> : ''))} {props.type.map((size) => size % size === NaN ? ( <ul> <li>Тонкое</li> <li>Традиционное</li> </ul> ) : ( '' ), )} мое решение)
Очень крутой курс, единственное не понял зачем ты сделал избранное с отправкой на сервер, также у всех будет одно и тоже, было бы прикольны если бы ты показал как это сделать через vue-cookies!
42:48 Акция: вторая, третья и последующие пиццы - бесплатно!
Я придумал такой способ для группировки пицц в корзине по id, типу теста (тонкое, традиционное) и размеру пиццы: В state.cart.items вместо массива я храню объект, в котором каждое свойство сгенерировано на основе трех параметров - id, type, size. Таким образом я получаю нужную группировку. Для создания ключей объекта можно использовать какую-нибудь хэширующую функцию, но я сделал еще проще (см. добавление в корзину). В свою очередь уникальные ключи имеют значение - объект со свойствами count (количество этих предметов) и item (все параметры). Добавление в корзину выглядит так function addToCart() { dispatch(addItem({ id, title, price, imageUrl, type: typeNames[activeType], size: sizes[activeSize], paramId: `${id}-${activeType}-${activeSize}`, })); }
А будет ли ещё Vue, но посложнее?
По-моему все можно сделать гораздо проще и понятнее, достаточно сразу установить нужный initialState: function getInitialState() { if (window.location.search) { const params = qs.parse(window.location.search.slice(1)); for (let field in params) { if (typeof params[field] !== 'string') continue; params[field] = Number(params[field]) } return params; } return { category: 0, page: 1, sortType: sortTypes[0], }; } export const filterSlice = createSlice({ name: 'filter', initialState: getInitialState(), // .....
Debounce - довольно простая функция, не вижу смысла либу использовать для этого (я в src создал папку util, а в ней debounce.js): export function debounce(fn, ms) { let timerId; return function() { clearTimeout(timerId); timerId = setTimeout(() => fn.apply(this, arguments), ms); } } Кстати, я сам решил реализовать алгоритм debounce и сделал точно так же! Сначала додумался использовать useCallback (хотя можно и через useRef на самом-то деле было - хранить функцию в ref.current, но useCallback - более правильный вариант), а потом начал использовать два состояния - локальный input и глобальный searchInput. const updateSearchInput = useCallback(debounce(value => setSearchInput(value), 500), []); function handleInputChange(value) { // обработчик onChange на input и onClick на svg (крестик) setInput(value); updateSearchInput(value); }
5:28 Я просто вместо div использовал label и фокус работает как надо
Вопрос на собеседовании: "Зачем вы заменили нативный fetch на axios"? - Брат, так надо, Брат! - Вы приняты!
бро, перехожу с реакта на вью, благодаря тебе) спасибо за уроке, ты лучший на ютюбе
Низкий поклон за такие уроки. ОГРОМНОЕ СПАСИБО!!!! Всё понятно с первых слов с первого раза. Подписался, колокольчик + лайк
Спасибо за уроки, одни из лучших на ютубе если не лучшие. Можно вопрос? Откуда английский акцент и странные фразочки типа "это есть неправильно"?))))) Мы так не говорим уже лет 100 или 200. Сейчас "это есть неправильно" значит что ты кушаешь то, что не положено))
у тебя видео для начинающих или для умственно отсталых ?
1:04:09 Когда спрашивают, нужна ли математика программисту :D
Блин контент вообще шикарный, все очень подробно и круто объясняешь спасибо тебе за это!!111111 Я только недели две как изучаю vue, поэтому есть некоторые вопросы, если вдруг у тебя будет время, ответь пожалуйста. Если сможешь в кратце ответь пожалуйста на следующий вопрос, повторюсь что я только недавно начал изучать vue, может совсем глупым покажется вопрос. И так внимание вопрос - Зачем создавать ресурс /favorites если можно просто добавить к items поле isFavorite? И второй, можно ли было использовать pinia для добавления в нее items'ов и уже в pinia использовать actions для добавления в закладки корзину и тд? Спасибо за ответ, если вдруг найдешь время. Очень благодарен буду!!!!11111
Ужас, душнила, не может правильно сформулировать вопрос , когда понимает что сам своим вопросом заходит в тупик начинает переворачивать вопросы в свою пользу. А так очень достойные ответы можно почерпнуть знаний
1:00:42 Причина в другом. Строки в JavaScript основаны на Юникоде. И код символа Я больше, чем код символа А.
Спасибо
Спасибо
Спасибо тебе за видео, можешь подсказать как сайт расшифровал jwt токен бещ секретного ключа ??
setTimeOut( ) и setInterval( ) разве не асинхронные в JS? Почему ж нету - есть
Слишком медленный курс надо ускорить видео 🤣