🧩 Ловушка оптимизации
На тесте заметили:
— При 3000 заказах список подлагивает, даже после добавления виртуализации.
— Профайлер показывает сотни повторных ререндеров OrderCard, хотя данные не меняются.
❓ В чём настоящая проблема? Отмечайте правильный эмодзи 👋
🐸 Библиотека фронтендера
#междусобойчик
{orders.map(order => (
<OrderCard key={order.id} data={order} />
))}
На тесте заметили:
— При 3000 заказах список подлагивает, даже после добавления виртуализации.
— Профайлер показывает сотни повторных ререндеров OrderCard, хотя данные не меняются.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥49🌚25🤩7❤4💯1
🗿 Незаметные ререндеры
— Даже если filters не меняются, при любом апдейте родителя все Item снова ререндерятся.
❓ Почему так происходит?
🐸 Библиотека фронтендера
#междусобойчик
const FiltersContext = createContext({ filters: {} });
function App({ filters, items }) {
return (
<FiltersContext.Provider value={{ filters }}>
{items.map(i => <Item key={i.id} />)}
</FiltersContext.Provider>
);
}
— Даже если filters не меняются, при любом апдейте родителя все Item снова ререндерятся.
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🌚19❤2🔥1