Please open Telegram to view this post
VIEW IN TELEGRAM
😁13🥰2
Кажется, что всё просто: список, onClick — готово. Но при сотнях элементов каждый ререндер создаёт новые функции в JSX.
React считает их изменёнными и перерисовывает даже те строки, что не менялись.
На демо — незаметно. На проде — больно.
Каждый ререндер создаёт новые колбэки → React считает пропы изменёнными → перерисовывает.
useCallback стабилизирует ссылку, и компонент больше не «дёргается» без причины.
— Если список огромный — рендерьте только видимую часть (react-window, react-virtualized).
— Если элемент сложный — выносите его в memo-компонент с передачей колбэка через пропсы.
#hotfix #react
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🥰2🔥1
Переменная «живет» после выхода из функции, а память не освобождается.
Мы собрали 4 карточки, чтобы разобраться, как именно это устроено под капотом
#under_hood #js
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5⚡1🔥1
🔥 Когда понимаешь SOLID — жизнь становится проще
В октябре действует скидка 40% на все курсы от Proglib Academy, включая интенсив «Архитектуры и шаблоны проектирования»
📘 На интенсиве ты:
— разберёшься, как проектировать приложения, которые не ломаются при каждом изменении;
— освоишь SOLID-принципы, IoC, адаптеры и фабрики;
— научишься строить масштабируемые архитектуры;
— создашь собственную игру «Звёздные войны».
👨💻 Примеры кода на C#, Java, Python, PHP, C++ и JavaScript. Главное — понимать принципы, а не язык.
Преподаватель — Евгений Тюменцев, директор компании HWdTech, разрабатывал многопоточные кроссплатформенные приложения для IBM Watson.
📆 Формат: онлайн, 1 месяц.
📚 9 лекций + 2 бонусных занятия + практика.
Интенсив подойдёт джунам, которые хотят апнуться до мидла, и мидлам, мечтающим о роли архитектора.
👉 Переходи к курсам со скидкой 40%
В октябре действует скидка 40% на все курсы от Proglib Academy, включая интенсив «Архитектуры и шаблоны проектирования»
📘 На интенсиве ты:
— разберёшься, как проектировать приложения, которые не ломаются при каждом изменении;
— освоишь SOLID-принципы, IoC, адаптеры и фабрики;
— научишься строить масштабируемые архитектуры;
— создашь собственную игру «Звёздные войны».
👨💻 Примеры кода на C#, Java, Python, PHP, C++ и JavaScript. Главное — понимать принципы, а не язык.
Преподаватель — Евгений Тюменцев, директор компании HWdTech, разрабатывал многопоточные кроссплатформенные приложения для IBM Watson.
📆 Формат: онлайн, 1 месяц.
📚 9 лекций + 2 бонусных занятия + практика.
Интенсив подойдёт джунам, которые хотят апнуться до мидла, и мидлам, мечтающим о роли архитектора.
👉 Переходи к курсам со скидкой 40%
🥰4
Ранее мы выкладывали задачу для джуна+.
Сегодня разберем, что происходит в этом коде и как работают присваивания и ссылки на объекты в JavaScript.
1. let a = { n: 1 }; — создаём объект { n: 1 } и присваиваем его переменной a.
2. let b = a; — b теперь ссылается на тот же объект, что и a.
3. a.x = a = { n: 2 }; —
• Присваиваем новому объекту { n: 2 } переменную a.
• После этого свойству x объекта { n: 2 } присваиваем сам объект { n: 2 }.
4. console.log(a.x); — выводит undefined, так как свойство x в новом объекте { n: 2 } не было установлено.
5. console.log(b.x); — выводит объект { n: 2 }, потому что b ссылается на старый объект { n: 1 }, который теперь имеет свойство x, указывающее на { n: 2 }.
• b.x — { n: 2 }
#code_challenge
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4😢3
Вместо :invalid, который срабатывает сразу, используйте :user-invalid.
Что это дает:— Валидация срабатывает только после взаимодействия с полем
— Не показываем ошибки в пустой форме при загрузке
— Лучший UX без дополнительного JS
Сейчас на курсы Proglib действует −40%
#readme #css
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🔥2🥰2
Интересно узнать реальную статистику — от бюджетников до топовых сборок.
— Модель, процессор, RAM, SSD, год.
— Всё работает или есть проблемы?
— Довольны или хотите апгрейд?
Соберём честную картину
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱7🤔3🥰2
API URLPattern — это простой и мощный инструмент для сопоставления и валидации URL.
#stack #js
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3🥰2👍1