Telegram Group & Telegram Channel
πŸ”₯ ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ React-прилоТСния: Код-сплиттинг с React.lazy

БСгодня расскаТу ΠΎ ΠΊΠΎΠ΄-сплиттингС Π² React β€” ΠΌΠΎΡ‰Π½ΠΎΠΌ инструмСнтС для ускорСния Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ прилоТСния.

Когда нашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ растёт, Π±Π°Π½Π΄Π» становится тяТёлым, Π° врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ β€” Π΄Π»ΠΈΠ½Π½Π΅Π΅. РСшСниС? Код-сплиттинг. Он позволяСт Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, Π° Π½Π΅ вСсь ΠΊΠΎΠ΄ сразу.

Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ React.lazy() ΠΈ Suspense, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½Ρ‹.

πŸ“Œ ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

import React, { lazy, Suspense } from 'react';

const HeavyComponent = lazy(() => import('./HeavyComponent'));

function App() {
return (
<div>
<h1>Главная страница</h1>
<Suspense fallback={<p>Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°...</p>}>
<HeavyComponent />
</Suspense>
</div>
);
}

export default App;

Π—Π΄Π΅ΡΡŒ HeavyComponent загруТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½, Π° ΠΏΠΎΠΊΠ° ΠΎΠ½ загруТаСтся β€” показываСтся fallback.

πŸ“ Π“Π΄Π΅ это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
βœ” Π›Π΅Π½ΠΈΠ²Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ
βœ” Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ страницы (Dashboard, Profile)
βœ” Админ-ΠΏΠ°Π½Π΅Π»ΠΈ
βœ” ΠšΠ°Ρ€Ρ‚Ρ‹, Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Но ΠΏΠΎΠΌΠ½ΠΈ: React.lazy Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Для ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΡ‚ΠΈΠ»ΠΈΡ‚) Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ динамичСский ΠΈΠΌΠΏΠΎΡ€Ρ‚ (import()).

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄-сплиттинг Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ скаТи, насколько ΡƒΡΠΊΠΎΡ€ΠΈΠ»Π°ΡΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°! πŸš€

✍️ @React_lib



tg-me.com/React_lib/653
Create:
Last Update:

πŸ”₯ ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ React-прилоТСния: Код-сплиттинг с React.lazy

БСгодня расскаТу ΠΎ ΠΊΠΎΠ΄-сплиттингС Π² React β€” ΠΌΠΎΡ‰Π½ΠΎΠΌ инструмСнтС для ускорСния Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ прилоТСния.

Когда нашС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ растёт, Π±Π°Π½Π΄Π» становится тяТёлым, Π° врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ β€” Π΄Π»ΠΈΠ½Π½Π΅Π΅. РСшСниС? Код-сплиттинг. Он позволяСт Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, Π° Π½Π΅ вСсь ΠΊΠΎΠ΄ сразу.

Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ React.lazy() ΠΈ Suspense, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π½ΡƒΠΆΠ½Ρ‹.

πŸ“Œ ΠŸΡ€ΠΈΠΌΠ΅Ρ€:


import React, { lazy, Suspense } from 'react';

const HeavyComponent = lazy(() => import('./HeavyComponent'));

function App() {
return (
<div>
<h1>Главная страница</h1>
<Suspense fallback={<p>Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ°...</p>}>
<HeavyComponent />
</Suspense>
</div>
);
}

export default App;

Π—Π΄Π΅ΡΡŒ HeavyComponent загруТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π½ΡƒΠΆΠ΅Π½, Π° ΠΏΠΎΠΊΠ° ΠΎΠ½ загруТаСтся β€” показываСтся fallback.

πŸ“ Π“Π΄Π΅ это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ?
βœ” Π›Π΅Π½ΠΈΠ²Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ
βœ” Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ страницы (Dashboard, Profile)
βœ” Админ-ΠΏΠ°Π½Π΅Π»ΠΈ
βœ” ΠšΠ°Ρ€Ρ‚Ρ‹, Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Но ΠΏΠΎΠΌΠ½ΠΈ: React.lazy Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Для ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΡ‚ΠΈΠ»ΠΈΡ‚) Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ динамичСский ΠΈΠΌΠΏΠΎΡ€Ρ‚ (import()).

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄-сплиттинг Π² свой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ скаТи, насколько ΡƒΡΠΊΠΎΡ€ΠΈΠ»Π°ΡΡŒ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°! πŸš€

✍️ @React_lib

BY React


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/React_lib/653

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

What is Telegram?

Telegram is a cloud-based instant messaging service that has been making rounds as a popular option for those who wish to keep their messages secure. Telegram boasts a collection of different features, but it’s best known for its ability to secure messages and media by encrypting them during transit; this prevents third-parties from snooping on messages easily. Let’s take a look at what Telegram can do and why you might want to use it.

telegram from hk


Telegram React
FROM USA