Совет по JavaScript
Используй
👉 Гайды по JavaScript | дать буст
Используй
String.raw
с шаблонными литералами, чтобы выводить необработанные строки — экранирование при этом игнорируется.Please open Telegram to view this post
VIEW IN TELEGRAM
Знаешь, как Vue обновляет DOM?
Vue выполняет обновления DOM асинхронно. Когда ты меняешь реактивные данные, Vue не сразу трогает DOM.
Вместо этого:
1️⃣ Группирует несколько изменений данных в один апдейт
2️⃣ Кладёт эти апдейты в асинхронную очередь
3️⃣ Обрабатывает очередь на следующем «тике» event loop
Такое батчирование предотвращает лишние операции с DOM и повышает производительность.
👉 Гайды по JavaScript | дать буст
Vue выполняет обновления DOM асинхронно. Когда ты меняешь реактивные данные, Vue не сразу трогает DOM.
Вместо этого:
Такое батчирование предотвращает лишние операции с DOM и повышает производительность.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
Options API vs Composition API
✅ Options API — отлично подходит для небольших проектов или команд, которым важна быстрая настройка и понятная, структурированная организация кода.
✅ Composition API — лучше всего работает в крупных и сложных приложениях, где критична модульность, переиспользуемая логика и масштабируемость в долгосрочной перспективе.
✅ Смешанное использование — можно спокойно совмещать оба подхода в одном проекте, особенно если ты в процессе миграции или добавляешь новые фичи, где гибкость Composition API будет в плюс.
А ты какой подход используешь в своих проектах?
👉 Гайды по JavaScript | дать буст
А ты какой подход используешь в своих проектах?
Please open Telegram to view this post
VIEW IN TELEGRAM
Cтранная штука во vuejs о которой стрёмно рассказывать
Я подгружаю ТОННЫ данных при первом запуске приложения. Я одержим тем, чтобы UI реагировал мгновенно, и предпочту загрузить 1000 записей на старте, чем заставлять пользователя ждать.
Для этого использую composable
👉 Гайды по JavaScript | дать буст
Я подгружаю ТОННЫ данных при первом запуске приложения. Я одержим тем, чтобы UI реагировал мгновенно, и предпочту загрузить 1000 записей на старте, чем заставлять пользователя ждать.
Для этого использую composable
useCachedData
Please open Telegram to view this post
VIEW IN TELEGRAM
Реализация real-time функциональности во Vue
Взаимодействие в реальном времени становится всё более важным для веб-приложений. Это повышает вовлечённость пользователей и обеспечивает мгновенную обратную связь. Вот несколько подходов, которые стоит рассмотреть:
1️⃣ Обновления в реальном времени с Supabase
Используйте возможности Supabase для real-time синхронизации данных между всеми клиентами.
https://supabase.com/docs/guides/realtime
2️⃣ WebSocket и Server-Sent Events (SSE)
Эти технологии позволяют реализовать комментарии в реальном времени, уведомления и другие интерактивные компоненты.
👉 Гайды по JavaScript | дать буст
Взаимодействие в реальном времени становится всё более важным для веб-приложений. Это повышает вовлечённость пользователей и обеспечивает мгновенную обратную связь. Вот несколько подходов, которые стоит рассмотреть:
Используйте возможности Supabase для real-time синхронизации данных между всеми клиентами.
https://supabase.com/docs/guides/realtime
Эти технологии позволяют реализовать комментарии в реальном времени, уведомления и другие интерактивные компоненты.
Please open Telegram to view this post
VIEW IN TELEGRAM
Знаешь, когда стоит использовать Vue.nextTick?
nextTick нужен в следующих случаях:
✅ Когда нужно обратиться к обновлённым DOM-элементам сразу после изменения данных
✅ Когда ты выполняешь операции, зависящие от нового состояния DOM
✅ Когда нужно измерить размеры элемента после обновления (например, clientWidth, clientHeight)
✅ Когда используешь сторонние библиотеки, которые напрямую работают с DOM (например, Chart.js)
👉 Гайды по JavaScript | дать буст
nextTick нужен в следующих случаях:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Если ты хочешь собрать надёжное веб-приложение, то традиционно тебе пришлось бы заморачиваться с кучей инфраструктуры.
Но с serverless-архитектурой можно просто сосредоточиться на коде приложения.
В этом гайде POnukwili объясняет, как работает serverless, и показывает на практике, как опубликовать Docker-образ на Node.js в AWS ECR и задеплоить контейнер в AWS Lambda.
https://freecodecamp.org/news/serverless-architecture-with-aws-lambda/
👉 Гайды по JavaScript | дать буст
Но с serverless-архитектурой можно просто сосредоточиться на коде приложения.
В этом гайде POnukwili объясняет, как работает serverless, и показывает на практике, как опубликовать Docker-образ на Node.js в AWS ECR и задеплоить контейнер в AWS Lambda.
https://freecodecamp.org/news/serverless-architecture-with-aws-lambda/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Как использовать паттерн "разветвлённого компонента"
Выноси сложную условную отрисовку в отдельные компоненты.
Вместо множества
Такой подход делает код читаемее и проще в поддержке со временем.
👉 Гайды по JavaScript | дать буст
Выноси сложную условную отрисовку в отдельные компоненты.
Вместо множества
v-if
внутри одного компонента — создай отдельный компонент для каждого состояния.Такой подход делает код читаемее и проще в поддержке со временем.
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет дня:
В
👉 Гайды по JavaScript | дать буст
В
@nuxt_js
есть множество способов задать текущий layoutPlease open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4
This media is not supported in your browser
VIEW IN TELEGRAM
"Как можно сократить префетчинг (чтобы оптимизировать расходы на хостинг),
не сильно теряя в скорости навигации в Next?"
Попробуй префетчинг по ховеру (prefetching on hover)
👉 Гайды по JavaScript | дать буст
не сильно теряя в скорости навигации в Next?"
Попробуй префетчинг по ховеру (prefetching on hover)
Please open Telegram to view this post
VIEW IN TELEGRAM
Что вы знаете о паттерне проектирования «Slots и Template Props»?
Если у вас есть пропс, который напрямую передаётся в шаблон, это хороший знак, что вместо него стоит использовать слот. Почему? Они выполняют схожую функцию, но слот даёт больше гибкости.
👉 Гайды по JavaScript | дать буст
Если у вас есть пропс, который напрямую передаётся в шаблон, это хороший знак, что вместо него стоит использовать слот. Почему? Они выполняют схожую функцию, но слот даёт больше гибкости.
Please open Telegram to view this post
VIEW IN TELEGRAM
Поговорим о фрагментации в Options API и связности в Composition API
✅ Фрагментация в Options API
По мере роста компонента Vue.js по размеру или сложности, разработчики сталкиваются с тем, что логика расползается по разным секциям.
Например, при обновлении нескольких реактивных состояний или связанных вычислений, разрозненная структура Options API затрудняет поддержку читаемости и целостности кода.
✅ Связность в Composition API
Composition API побуждает инкапсулировать связанную логику в едином, цельном виде.
С помощью composition-функций можно группировать данные и методы, которые взаимодействуют друг с другом.
Это улучшает читаемость и упрощает ментальную модель взаимодействия разных частей компонента.
👉 Гайды по JavaScript | дать буст
По мере роста компонента Vue.js по размеру или сложности, разработчики сталкиваются с тем, что логика расползается по разным секциям.
Например, при обновлении нескольких реактивных состояний или связанных вычислений, разрозненная структура Options API затрудняет поддержку читаемости и целостности кода.
Composition API побуждает инкапсулировать связанную логику в едином, цельном виде.
С помощью composition-функций можно группировать данные и методы, которые взаимодействуют друг с другом.
Это улучшает читаемость и упрощает ментальную модель взаимодействия разных частей компонента.
Please open Telegram to view this post
VIEW IN TELEGRAM
Composition API: Эффективная структура
Composition API предлагает упрощённый подход к архитектуре компонентов, акцентируя внимание на логической группировке функциональности и детализированных импортах.
Такая структура не только улучшает реактивность, но и минимизирует использование памяти за счёт устранения накладных расходов на прокси экземпляра. Код, написанный с использованием Composition API, позволяет доступ к переменным в области видимости, обходя прокси и обеспечивая прямой, оптимизированный доступ к реактивным свойствам.
Этот подход с инлайновыми, компилируемыми функциями приводит к меньшим и более эффективным бандлам и улучшает минификацию, поскольку имена переменных можно безопасно укорачивать по всему коду.
На изображении вы можете увидеть пример Tree-shaking.
👉 Гайды по JavaScript | дать буст
Composition API предлагает упрощённый подход к архитектуре компонентов, акцентируя внимание на логической группировке функциональности и детализированных импортах.
Такая структура не только улучшает реактивность, но и минимизирует использование памяти за счёт устранения накладных расходов на прокси экземпляра. Код, написанный с использованием Composition API, позволяет доступ к переменным в области видимости, обходя прокси и обеспечивая прямой, оптимизированный доступ к реактивным свойствам.
Этот подход с инлайновыми, компилируемыми функциями приводит к меньшим и более эффективным бандлам и улучшает минификацию, поскольку имена переменных можно безопасно укорачивать по всему коду.
На изображении вы можете увидеть пример Tree-shaking.
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по TypeScript: Модификатор public в конструкторах = немедленное объявление свойства
Посмотрите на разницу в действии.
👉 Гайды по JavaScript | дать буст
Посмотрите на разницу в действии.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
С nuxt_js компоненты обычно уничтожаются и пересоздаются при переходе между страницами, из-за чего их состояние сбрасывается. Установив свойство keepalive у компонента NuxtPage, Nuxt обернёт ваши страницы в Vue-компонент <KeepAlive>, сохраняя их состояние при навигации.
👉 Гайды по JavaScript | дать буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Фишка в TypeScript: оператор satisfies предотвращает "тихие" ошибки.
Он позволяет ловить опечатки уже на этапе компиляции.
👉 Гайды по JavaScript | дать буст
Он позволяет ловить опечатки уже на этапе компиляции.
Please open Telegram to view this post
VIEW IN TELEGRAM