ಲೇಜಿ ಲೋಡಿಂಗ್ ಮತ್ತು ಕಾಂಪೊನೆಂಟ್ ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಮೂಲಕ ನಿಮ್ಮ ರಿಯಾಕ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗಾಗಿ ವೇಗದ ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯ ಮತ್ತು ಸುಧಾರಿತ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಿ. ಪ್ರಾಯೋಗಿಕ ತಂತ್ರಗಳು ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಕಲಿಯಿರಿ.
ರಿಯಾಕ್ಟ್ ಲೇಜಿ ಲೋಡಿಂಗ್: ಅತ್ಯುತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ ಕಾಂಪೊನೆಂಟ್ ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್
ಇಂದಿನ ವೇಗದ ಡಿಜಿಟಲ್ ಜಗತ್ತಿನಲ್ಲಿ, ವೆಬ್ಸೈಟ್ ಕಾರ್ಯಕ್ಷಮತೆ ಅತ್ಯಂತ ಮಹತ್ವದ್ದಾಗಿದೆ. ಬಳಕೆದಾರರು ತಕ್ಷಣದ ಫಲಿತಾಂಶವನ್ನು ನಿರೀಕ್ಷಿಸುತ್ತಾರೆ, ಮತ್ತು ನಿಧಾನವಾದ ಲೋಡಿಂಗ್ ಸಮಯವು ಹತಾಶೆ, ಕೈಬಿಟ್ಟ ಕಾರ್ಟ್ಗಳು ಮತ್ತು ನಕಾರಾತ್ಮಕ ಬ್ರ್ಯಾಂಡ್ ಇಮೇಜ್ಗೆ ಕಾರಣವಾಗಬಹುದು. ರಿಯಾಕ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ, ಸುಗಮ ಮತ್ತು ಆಕರ್ಷಕವಾದ ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ನೀಡಲು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉತ್ತಮಗೊಳಿಸುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಇದನ್ನು ಸಾಧಿಸಲು ಒಂದು ಶಕ್ತಿಯುತ ತಂತ್ರವೆಂದರೆ ಲೇಜಿ ಲೋಡಿಂಗ್ ಜೊತೆಗೆ ಕಾಂಪೊನೆಂಟ್ ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್.
ಲೇಜಿ ಲೋಡಿಂಗ್ ಮತ್ತು ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಎಂದರೇನು?
ಲೇಜಿ ಲೋಡಿಂಗ್ ಎನ್ನುವುದು ಒಂದು ತಂತ್ರವಾಗಿದ್ದು, ಇದರಲ್ಲಿ ಚಿತ್ರಗಳು, ಸ್ಕ್ರಿಪ್ಟ್ಗಳು ಮತ್ತು ಕಾಂಪೊನೆಂಟ್ಗಳಂತಹ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಆರಂಭಿಕ ಪುಟ ಲೋಡ್ ಸಮಯದಲ್ಲಿ ಒಂದೇ ಬಾರಿಗೆ ಲೋಡ್ ಮಾಡುವ ಬದಲು, ಅವುಗಳ ಅವಶ್ಯಕತೆ ಇದ್ದಾಗ ಮಾತ್ರ ಲೋಡ್ ಮಾಡಲಾಗುತ್ತದೆ. ಇದು ಆರಂಭದಲ್ಲಿ ಡೌನ್ಲೋಡ್ ಮತ್ತು ಪಾರ್ಸ್ ಮಾಡಬೇಕಾದ ಡೇಟಾದ ಪ್ರಮಾಣವನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಕಡಿಮೆ ಮಾಡುತ್ತದೆ, ಇದರಿಂದಾಗಿ ವೇಗದ ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯ ಮತ್ತು ಸುಧಾರಿತ ಗ್ರಹಿಕೆಯ ಕಾರ್ಯಕ್ಷಮತೆ ಉಂಟಾಗುತ್ತದೆ.
ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಎನ್ನುವುದು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ಕೋಡನ್ನು ಸಣ್ಣ, ಹೆಚ್ಚು ನಿರ್ವಹಿಸಬಲ್ಲ ತುಂಡುಗಳಾಗಿ (ಅಥವಾ ಬಂಡಲ್ಗಳಾಗಿ) ವಿಭಜಿಸುವ ಪ್ರಕ್ರಿಯೆಯಾಗಿದೆ. ಇದು ಬ್ರೌಸರ್ಗೆ ಆರಂಭಿಕ ವೀಕ್ಷಣೆಗೆ ಅಗತ್ಯವಾದ ಕೋಡನ್ನು ಮಾತ್ರ ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ, ಮತ್ತು ಇತರ ಕೋಡನ್ನು ನಿಜವಾಗಿಯೂ ಅಗತ್ಯವಿದ್ದಾಗ ಲೋಡ್ ಮಾಡಲು ಮುಂದೂಡುತ್ತದೆ. ಲೇಜಿ ಲೋಡಿಂಗ್, ನಿರ್ದಿಷ್ಟ ಕಾಂಪೊನೆಂಟ್ಗಳನ್ನು ಅವು ರೆಂಡರ್ ಆಗುವ ಸಮಯದಲ್ಲಿ ಮಾತ್ರ ಲೋಡ್ ಮಾಡಲು ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತದೆ.
ರಿಯಾಕ್ಟ್ನಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಮತ್ತು ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಅನ್ನು ಏಕೆ ಬಳಸಬೇಕು?
ನಿಮ್ಮ ರಿಯಾಕ್ಟ್ ಪ್ರಾಜೆಕ್ಟ್ಗಳಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಮತ್ತು ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಅನ್ನು ಅಳವಡಿಸಲು ಕೆಲವು ಕಾರಣಗಳು ಇಲ್ಲಿವೆ:
- ಸುಧಾರಿತ ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯ: ಆರಂಭದಲ್ಲಿ ಕೇವಲ ಅಗತ್ಯ ಕಾಂಪೊನೆಂಟ್ಗಳನ್ನು ಲೋಡ್ ಮಾಡುವ ಮೂಲಕ, ಪುಟವು ಸಂವಾದಾತ್ಮಕವಾಗಲು ತೆಗೆದುಕೊಳ್ಳುವ ಸಮಯವನ್ನು ನೀವು ಗಣನೀಯವಾಗಿ ಕಡಿಮೆ ಮಾಡಬಹುದು. ನಿಧಾನಗತಿಯ ಇಂಟರ್ನೆಟ್ ಸಂಪರ್ಕ ಹೊಂದಿರುವ ಅಥವಾ ಮೊಬೈಲ್ ಸಾಧನಗಳಲ್ಲಿರುವ ಬಳಕೆದಾರರಿಗೆ ಇದು ವಿಶೇಷವಾಗಿ ಪ್ರಯೋಜನಕಾರಿಯಾಗಿದೆ.
- ಕಡಿಮೆಯಾದ ಬಂಡಲ್ ಗಾತ್ರ: ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ಆರಂಭಿಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಬಂಡಲ್ನ ಗಾತ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ, ಇದು ವೇಗದ ಡೌನ್ಲೋಡ್ ಮತ್ತು ಪಾರ್ಸಿಂಗ್ ಸಮಯಕ್ಕೆ ಕಾರಣವಾಗುತ್ತದೆ.
- ವರ್ಧಿತ ಬಳಕೆದಾರರ ಅನುಭವ: ವೇಗವಾಗಿ ಲೋಡ್ ಆಗುವ ವೆಬ್ಸೈಟ್ ಸುಗಮ ಮತ್ತು ಹೆಚ್ಚು ಆನಂದದಾಯಕ ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದು ಹೆಚ್ಚಿದ ತೊಡಗಿಸಿಕೊಳ್ಳುವಿಕೆ ಮತ್ತು ಪರಿವರ್ತನೆ ದರಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತದೆ.
- ಕಡಿಮೆ ಸಾಮರ್ಥ್ಯದ ಸಾಧನಗಳಲ್ಲಿ ಉತ್ತಮ ಕಾರ್ಯಕ್ಷಮತೆ: ಸೀಮಿತ ಪ್ರೊಸೆಸಿಂಗ್ ಪವರ್ ಮತ್ತು ಮೆಮೊರಿ ಹೊಂದಿರುವ ಸಾಧನಗಳಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಸುಧಾರಿಸಬಹುದು, ಏಕೆಂದರೆ ಅವುಗಳು ಸಂಪೂರ್ಣ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಮುಂಚಿತವಾಗಿ ಲೋಡ್ ಮಾಡಿ ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಬೇಕಾಗಿಲ್ಲ.
- ಎಸ್ಇಒ ಪ್ರಯೋಜನಗಳು: ಸರ್ಚ್ ಇಂಜಿನ್ಗಳು ವೇಗದ ಲೋಡಿಂಗ್ ಸಮಯವಿರುವ ವೆಬ್ಸೈಟ್ಗಳಿಗೆ ಆದ್ಯತೆ ನೀಡುತ್ತವೆ, ಆದ್ದರಿಂದ ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಅಳವಡಿಸುವುದು ನಿಮ್ಮ ಸರ್ಚ್ ಇಂಜಿನ್ ಶ್ರೇಯಾಂಕಗಳ ಮೇಲೆ ಸಕಾರಾತ್ಮಕ ಪರಿಣಾಮ ಬೀರಬಹುದು.
ರಿಯಾಕ್ಟ್ನಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಹೇಗೆ ಅಳವಡಿಸುವುದು
ರಿಯಾಕ್ಟ್ React.lazy
ಮತ್ತು Suspense
ಕಾಂಪೊನೆಂಟ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಲೇಜಿ ಲೋಡಿಂಗ್ಗೆ ಅಂತರ್ಗತ ಬೆಂಬಲವನ್ನು ನೀಡುತ್ತದೆ. ಇಲ್ಲಿ ಹಂತ-ಹಂತದ ಮಾರ್ಗದರ್ಶಿಯಿದೆ:
1. React.lazy() ಬಳಸುವುದು
React.lazy()
ನಿಮಗೆ ಕಾಂಪೊನೆಂಟ್ಗಳನ್ನು ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ಆಮದು ಮಾಡಿಕೊಳ್ಳಲು ಅನುಮತಿಸುತ್ತದೆ, ಪರಿಣಾಮಕಾರಿಯಾಗಿ ನಿಮ್ಮ ಕೋಡನ್ನು ಪ್ರತ್ಯೇಕ ತುಂಡುಗಳಾಗಿ ವಿಭಜಿಸುತ್ತದೆ. ಇದು import()
ಅನ್ನು ಕರೆಯುವ ಫಂಕ್ಷನ್ ಅನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಅದು ಕಾಂಪೊನೆಂಟ್ಗೆ ಪರಿಹಾರವಾಗುವ ಪ್ರಾಮಿಸ್ ಅನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ.
const MyComponent = React.lazy(() => import('./MyComponent'));
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, MyComponent
ರೆಂಡರ್ ಆಗುವ ಸಮಯದಲ್ಲಿ ಮಾತ್ರ ಲೋಡ್ ಆಗುತ್ತದೆ.
2. <Suspense> ನೊಂದಿಗೆ ಸುತ್ತುವರಿಯುವುದು
React.lazy()
ಕ್ರಿಯಾತ್ಮಕ ಆಮದುಗಳನ್ನು ಬಳಸುವುದರಿಂದ, ಅವು ಅಸಮಕಾಲಿಕವಾಗಿರುತ್ತವೆ, ನೀವು ಲೇಜಿ-ಲೋಡೆಡ್ ಕಾಂಪೊನೆಂಟ್ ಅನ್ನು <Suspense>
ಕಾಂಪೊನೆಂಟ್ನೊಂದಿಗೆ ಸುತ್ತುವರಿಯಬೇಕು. <Suspense>
ಕಾಂಪೊನೆಂಟ್ ನಿಮಗೆ ಕಾಂಪೊನೆಂಟ್ ಲೋಡ್ ಆಗುತ್ತಿರುವಾಗ ಫಾಲ್ಬ್ಯಾಕ್ UI (ಉದಾಹರಣೆಗೆ, ಲೋಡಿಂಗ್ ಸ್ಪಿನ್ನರ್) ಅನ್ನು ಪ್ರದರ್ಶಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
import React, { Suspense } from 'react';
function MyPage() {
return (
Loading...
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, MyComponent
ಲೋಡ್ ಆಗುತ್ತಿರುವಾಗ Loading...
ಸಂದೇಶವನ್ನು ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ. ಕಾಂಪೊನೆಂಟ್ ಲೋಡ್ ಆದ ನಂತರ, ಅದು ಫಾಲ್ಬ್ಯಾಕ್ UI ಅನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ.
3. ಪ್ರಾಯೋಗಿಕ ಉದಾಹರಣೆ: ದೊಡ್ಡ ಇಮೇಜ್ ಗ್ಯಾಲರಿಯನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡುವುದು
ನೀವು ದೊಡ್ಡ ಇಮೇಜ್ ಗ್ಯಾಲರಿಯನ್ನು ಹೊಂದಿರುವ ಸನ್ನಿವೇಶವನ್ನು ಪರಿಗಣಿಸೋಣ. ಎಲ್ಲಾ ಚಿತ್ರಗಳನ್ನು ಒಂದೇ ಬಾರಿಗೆ ಲೋಡ್ ಮಾಡುವುದು ಕಾರ್ಯಕ್ಷಮತೆಯ ಮೇಲೆ ಗಮನಾರ್ಹ ಪರಿಣಾಮ ಬೀರಬಹುದು. React.lazy()
ಮತ್ತು <Suspense>
ಬಳಸಿ ಚಿತ್ರಗಳನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದು ಇಲ್ಲಿದೆ:
import React, { Suspense } from 'react';
const LazyImage = React.lazy(() => import('./Image'));
function ImageGallery() {
const images = [
{ id: 1, src: 'image1.jpg', alt: 'Image 1' },
{ id: 2, src: 'image2.jpg', alt: 'Image 2' },
{ id: 3, src: 'image3.jpg', alt: 'Image 3' },
// ... more images
];
return (
{images.map(image => (
Loading image... }>
))}
);
}
export default ImageGallery;
ಮತ್ತು Image.js
ಕಾಂಪೊನೆಂಟ್:
import React from 'react';
const Image = ({ src, alt }) => {
return
;
};
export default Image;
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, ಪ್ರತಿಯೊಂದು ಚಿತ್ರವನ್ನು <Suspense>
ಕಾಂಪೊನೆಂಟ್ನಲ್ಲಿ ಸುತ್ತುವರಿಯಲಾಗಿದೆ, ಆದ್ದರಿಂದ ಪ್ರತಿಯೊಂದು ಚಿತ್ರವು ಲೋಡ್ ಆಗುತ್ತಿರುವಾಗ ಲೋಡಿಂಗ್ ಸಂದೇಶವನ್ನು ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ. ಚಿತ್ರಗಳು ಡೌನ್ಲೋಡ್ ಆಗುತ್ತಿರುವಾಗ ಇಡೀ ಪುಟವು ಬ್ಲಾಕ್ ಆಗುವುದನ್ನು ಇದು ತಡೆಯುತ್ತದೆ.
ಸುಧಾರಿತ ತಂತ್ರಗಳು ಮತ್ತು ಪರಿಗಣನೆಗಳು
1. ಎರರ್ ಬೌಂಡರಿಗಳು
ಲೇಜಿ ಲೋಡಿಂಗ್ ಬಳಸುವಾಗ, ಲೋಡಿಂಗ್ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ಸಂಭವಿಸಬಹುದಾದ ಸಂಭಾವ್ಯ ದೋಷಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು ಮುಖ್ಯವಾಗಿದೆ. ಈ ದೋಷಗಳನ್ನು ಹಿಡಿಯಲು ಮತ್ತು ಫಾಲ್ಬ್ಯಾಕ್ UI ಅನ್ನು ಪ್ರದರ್ಶಿಸಲು ಎರರ್ ಬೌಂಡರಿಗಳನ್ನು ಬಳಸಬಹುದು. ನೀವು ಈ ರೀತಿ ಎರರ್ ಬೌಂಡರಿ ಕಾಂಪೊನೆಂಟ್ ಅನ್ನು ರಚಿಸಬಹುದು:
import React, { Component } from 'react';
class ErrorBoundary extends Component {
constructor(props) {
super(props);
this.state = { hasError: false };
}
static getDerivedStateFromError(error) {
// Update state so the next render will show the fallback UI.
return { hasError: true };
}
componentDidCatch(error, errorInfo) {
// You can also log the error to an error reporting service
console.error(error, errorInfo);
}
render() {
if (this.state.hasError) {
// You can render any custom fallback UI
return Something went wrong.
;
}
return this.props.children;
}
}
export default ErrorBoundary;
ನಂತರ <Suspense>
ಕಾಂಪೊನೆಂಟ್ ಅನ್ನು <ErrorBoundary>
ನೊಂದಿಗೆ ಸುತ್ತುವರಿಯಿರಿ:
Loading...}>
MyComponent
ಲೋಡ್ ಆಗುವಾಗ ದೋಷ ಸಂಭವಿಸಿದರೆ, <ErrorBoundary>
ಅದನ್ನು ಹಿಡಿದು ಫಾಲ್ಬ್ಯಾಕ್ UI ಅನ್ನು ಪ್ರದರ್ಶಿಸುತ್ತದೆ.
2. ಸರ್ವರ್-ಸೈಡ್ ರೆಂಡರಿಂಗ್ (SSR) ಮತ್ತು ಲೇಜಿ ಲೋಡಿಂಗ್
ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯವನ್ನು ಸುಧಾರಿಸಲು ಸರ್ವರ್-ಸೈಡ್ ರೆಂಡರಿಂಗ್ (SSR) ಜೊತೆಯಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಸಹ ಬಳಸಬಹುದು. ಆದಾಗ್ಯೂ, ಇದಕ್ಕೆ ಕೆಲವು ಹೆಚ್ಚುವರಿ ಕಾನ್ಫಿಗರೇಶನ್ ಅಗತ್ಯವಿದೆ. ಸರ್ವರ್ ಕ್ರಿಯಾತ್ಮಕ ಆಮದುಗಳನ್ನು ಸರಿಯಾಗಿ ನಿಭಾಯಿಸಬಲ್ಲದು ಮತ್ತು ಲೇಜಿ-ಲೋಡೆಡ್ ಕಾಂಪೊನೆಂಟ್ಗಳು ಕ್ಲೈಂಟ್-ಸೈಡ್ನಲ್ಲಿ ಸರಿಯಾಗಿ ಹೈಡ್ರೇಟ್ ಆಗಿವೆ ಎಂದು ನೀವು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬೇಕು.
Next.js ಮತ್ತು Gatsby.js ನಂತಹ ಪರಿಕರಗಳು SSR ಪರಿಸರದಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಮತ್ತು ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ಗೆ ಅಂತರ್ಗತ ಬೆಂಬಲವನ್ನು ನೀಡುತ್ತವೆ, ಇದು ಪ್ರಕ್ರಿಯೆಯನ್ನು ಹೆಚ್ಚು ಸುಲಭಗೊಳಿಸುತ್ತದೆ.
3. ಲೇಜಿ-ಲೋಡೆಡ್ ಕಾಂಪೊನೆಂಟ್ಗಳನ್ನು ಪ್ರಿಲೋಡ್ ಮಾಡುವುದು
ಕೆಲವು ಸಂದರ್ಭಗಳಲ್ಲಿ, ಲೇಜಿ-ಲೋಡೆಡ್ ಕಾಂಪೊನೆಂಟ್ ನಿಜವಾಗಿ ಅಗತ್ಯವಾಗುವ ಮೊದಲು ಅದನ್ನು ಪ್ರಿಲೋಡ್ ಮಾಡಲು ನೀವು ಬಯಸಬಹುದು. ಶೀಘ್ರದಲ್ಲೇ ರೆಂಡರ್ ಆಗುವ ಸಾಧ್ಯತೆಯಿರುವ ಕಾಂಪೊನೆಂಟ್ಗಳಿಗೆ ಇದು ಉಪಯುಕ್ತವಾಗಬಹುದು, ಉದಾಹರಣೆಗೆ ಫೋಲ್ಡ್ನ ಕೆಳಗೆ ಇರುವ ಆದರೆ ವೀಕ್ಷಣೆಗೆ ಸ್ಕ್ರಾಲ್ ಆಗುವ ಸಾಧ್ಯತೆಯಿರುವ ಕಾಂಪೊನೆಂಟ್ಗಳು. import()
ಫಂಕ್ಷನ್ ಅನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ಕರೆಯುವ ಮೂಲಕ ನೀವು ಕಾಂಪೊನೆಂಟ್ ಅನ್ನು ಪ್ರಿಲೋಡ್ ಮಾಡಬಹುದು:
import('./MyComponent'); // Preload MyComponent
ಇದು ಕಾಂಪೊನೆಂಟ್ ಅನ್ನು ಹಿನ್ನೆಲೆಯಲ್ಲಿ ಲೋಡ್ ಮಾಡಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ, ಆದ್ದರಿಂದ ಅದು ನಿಜವಾಗಿ ರೆಂಡರ್ ಆದಾಗ ಹೆಚ್ಚು ವೇಗವಾಗಿ ಲಭ್ಯವಿರುತ್ತದೆ.
4. ವೆಬ್ಪ್ಯಾಕ್ ಮ್ಯಾಜಿಕ್ ಕಾಮೆಂಟ್ಗಳೊಂದಿಗೆ ಡೈನಾಮಿಕ್ ಇಂಪೋರ್ಟ್ಸ್
ವೆಬ್ಪ್ಯಾಕ್ನ "ಮ್ಯಾಜಿಕ್ ಕಾಮೆಂಟ್ಗಳು" ರಚಿಸಲಾದ ಕೋಡ್ ತುಂಡುಗಳ ಹೆಸರುಗಳನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಲು ಒಂದು ಮಾರ್ಗವನ್ನು ಒದಗಿಸುತ್ತದೆ. ಇದು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ಬಂಡಲ್ ರಚನೆಯನ್ನು ಡೀಬಗ್ ಮಾಡಲು ಮತ್ತು ವಿಶ್ಲೇಷಿಸಲು ಸಹಾಯಕವಾಗಬಹುದು. ಉದಾಹರಣೆಗೆ:
const MyComponent = React.lazy(() => import(/* webpackChunkName: "my-component" */ './MyComponent'));
ಇದು ಸಾಮಾನ್ಯ ಹೆಸರಿನ ಬದಲಿಗೆ "my-component.js" (ಅಥವಾ ಅಂತಹುದೇ) ಹೆಸರಿನ ಕೋಡ್ ಚಂಕ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ.
5. ಸಾಮಾನ್ಯ ತಪ್ಪುಗಳನ್ನು ತಪ್ಪಿಸುವುದು
- ಅತಿಯಾದ ಸ್ಪ್ಲಿಟಿಂಗ್: ನಿಮ್ಮ ಕೋಡನ್ನು ಹಲವಾರು ಸಣ್ಣ ತುಂಡುಗಳಾಗಿ ವಿಭಜಿಸುವುದರಿಂದ ಬಹು ನೆಟ್ವರ್ಕ್ ವಿನಂತಿಗಳನ್ನು ಮಾಡುವ ಓವರ್ಹೆಡ್ನಿಂದಾಗಿ ಕಾರ್ಯಕ್ಷಮತೆ ವಾಸ್ತವವಾಗಿ ಕಡಿಮೆಯಾಗಬಹುದು. ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ಗೆ ಸರಿಹೊಂದುವ ಸಮತೋಲನವನ್ನು ಕಂಡುಕೊಳ್ಳಿ.
- ತಪ್ಪಾದ ಸಸ್ಪೆನ್ಸ್ ಸ್ಥಳگذاری: ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಒದಗಿಸಲು ನಿಮ್ಮ
<Suspense>
ಬೌಂಡರಿಗಳನ್ನು ಸೂಕ್ತವಾಗಿ ಇರಿಸಲಾಗಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ. ಸಾಧ್ಯವಾದರೆ ಇಡೀ ಪುಟಗಳನ್ನು<Suspense>
ನಲ್ಲಿ ಸುತ್ತುವುದನ್ನು ತಪ್ಪಿಸಿ. - ಎರರ್ ಬೌಂಡರಿಗಳನ್ನು ಮರೆಯುವುದು: ಲೇಜಿ ಲೋಡಿಂಗ್ ಸಮಯದಲ್ಲಿ ಸಂಭಾವ್ಯ ದೋಷಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಯಾವಾಗಲೂ ಎರರ್ ಬೌಂಡರಿಗಳನ್ನು ಬಳಸಿ.
ನೈಜ-ಪ್ರಪಂಚದ ಉದಾಹರಣೆಗಳು ಮತ್ತು ಬಳಕೆಯ ಪ್ರಕರಣಗಳು
ರಿಯಾಕ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸಲು ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ವ್ಯಾಪಕ ಶ್ರೇಣಿಯ ಸನ್ನಿವೇಶಗಳಿಗೆ ಅನ್ವಯಿಸಬಹುದು. ಇಲ್ಲಿ ಕೆಲವು ಉದಾಹರಣೆಗಳಿವೆ:
- ಇ-ಕಾಮರ್ಸ್ ವೆಬ್ಸೈಟ್ಗಳು: ಉತ್ಪನ್ನದ ಚಿತ್ರಗಳು, ವೀಡಿಯೊಗಳು ಮತ್ತು ವಿವರವಾದ ಉತ್ಪನ್ನ ವಿವರಣೆಗಳನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡುವುದರಿಂದ ಉತ್ಪನ್ನ ಪುಟಗಳ ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯವನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಸುಧಾರಿಸಬಹುದು.
- ಬ್ಲಾಗ್ಗಳು ಮತ್ತು ಸುದ್ದಿ ವೆಬ್ಸೈಟ್ಗಳು: ಚಿತ್ರಗಳು, ಎಂಬೆಡೆಡ್ ವೀಡಿಯೊಗಳು ಮತ್ತು ಕಾಮೆಂಟ್ ವಿಭಾಗಗಳನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡುವುದರಿಂದ ಓದುವ ಅನುಭವವನ್ನು ಹೆಚ್ಚಿಸಬಹುದು ಮತ್ತು ಬೌನ್ಸ್ ದರಗಳನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು.
- ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗಳು ಮತ್ತು ಅಡ್ಮಿನ್ ಪ್ಯಾನೆಲ್ಗಳು: ಸಂಕೀರ್ಣ ಚಾರ್ಟ್ಗಳು, ಗ್ರಾಫ್ಗಳು ಮತ್ತು ಡೇಟಾ ಟೇಬಲ್ಗಳನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡುವುದರಿಂದ ಡ್ಯಾಶ್ಬೋರ್ಡ್ಗಳು ಮತ್ತು ಅಡ್ಮಿನ್ ಪ್ಯಾನೆಲ್ಗಳ ಸ್ಪಂದಿಸುವಿಕೆಯನ್ನು ಸುಧಾರಿಸಬಹುದು.
- ಸಿಂಗಲ್-ಪೇಜ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು (SPAs): ಮಾರ್ಗಗಳು ಮತ್ತು ಕಾಂಪೊನೆಂಟ್ಗಳನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡುವುದರಿಂದ SPAs ನ ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯವನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು ಮತ್ತು ಒಟ್ಟಾರೆ ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ಸುಧಾರಿಸಬಹುದು.
- ಅಂತಾರಾಷ್ಟ್ರೀಕೃತ ಅಪ್ಲಿಕೇಶನ್ಗಳು: ಬಳಕೆದಾರರ ಭಾಷೆಗೆ ಅಗತ್ಯವಿದ್ದಾಗ ಮಾತ್ರ ಸ್ಥಳೀಯ-ನಿರ್ದಿಷ್ಟ ಸಂಪನ್ಮೂಲಗಳನ್ನು (ಪಠ್ಯ, ಚಿತ್ರಗಳು, ಇತ್ಯಾದಿ) ಲೋಡ್ ಮಾಡುವುದು. ಉದಾಹರಣೆಗೆ, ಜರ್ಮನಿಯಲ್ಲಿರುವ ಬಳಕೆದಾರರಿಗೆ ಜರ್ಮನ್ ಅನುವಾದಗಳನ್ನು ಲೋಡ್ ಮಾಡುವುದು ಮತ್ತು ಸ್ಪೇನ್ನಲ್ಲಿರುವ ಬಳಕೆದಾರರಿಗೆ ಸ್ಪ್ಯಾನಿಷ್ ಅನುವಾದಗಳನ್ನು ಲೋಡ್ ಮಾಡುವುದು.
ಉದಾಹರಣೆ: ಅಂತರರಾಷ್ಟ್ರೀಯ ಇ-ಕಾಮರ್ಸ್ ವೆಬ್ಸೈಟ್
ಜಾಗತಿಕವಾಗಿ ಉತ್ಪನ್ನಗಳನ್ನು ಮಾರಾಟ ಮಾಡುವ ಇ-ಕಾಮರ್ಸ್ ವೆಬ್ಸೈಟ್ ಅನ್ನು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ. ವಿವಿಧ ದೇಶಗಳು ವಿಭಿನ್ನ ಕರೆನ್ಸಿಗಳು, ಭಾಷೆಗಳು ಮತ್ತು ಉತ್ಪನ್ನ ಕ್ಯಾಟಲಾಗ್ಗಳನ್ನು ಹೊಂದಿರಬಹುದು. ಪ್ರತಿಯೊಂದು ದೇಶದ ಎಲ್ಲಾ ಡೇಟಾವನ್ನು ಮುಂಚಿತವಾಗಿ ಲೋಡ್ ಮಾಡುವ ಬದಲು, ಬಳಕೆದಾರರು ಸೈಟ್ಗೆ ಭೇಟಿ ನೀಡಿದಾಗ ಮಾತ್ರ ಅವರ ಸ್ಥಳಕ್ಕೆ ನಿರ್ದಿಷ್ಟವಾದ ಡೇಟಾವನ್ನು ಲೋಡ್ ಮಾಡಲು ನೀವು ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಬಳಸಬಹುದು.
const CurrencyFormatter = React.lazy(() => import(`./CurrencyFormatter/${userCountry}`))
const ProductCatalog = React.lazy(() => import(`./ProductCatalog/${userCountry}`))
function ECommerceSite() {
const userCountry = getUserCountry(); // Function to determine user's country
return (
Loading content for your region...}>
);
}
ತೀರ್ಮಾನ
ಲೇಜಿ ಲೋಡಿಂಗ್ ಮತ್ತು ಕಾಂಪೊನೆಂಟ್ ಕೋಡ್ ಸ್ಪ್ಲಿಟಿಂಗ್ ರಿಯಾಕ್ಟ್ ಅಪ್ಲಿಕೇಶನ್ಗಳ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉತ್ತಮಗೊಳಿಸಲು ಶಕ್ತಿಯುತ ತಂತ್ರಗಳಾಗಿವೆ. ಕಾಂಪೊನೆಂಟ್ಗಳು ಅಗತ್ಯವಿದ್ದಾಗ ಮಾತ್ರ ಅವುಗಳನ್ನು ಲೋಡ್ ಮಾಡುವ ಮೂಲಕ, ನೀವು ಆರಂಭಿಕ ಲೋಡ್ ಸಮಯವನ್ನು ಗಣನೀಯವಾಗಿ ಕಡಿಮೆ ಮಾಡಬಹುದು, ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ಸುಧಾರಿಸಬಹುದು ಮತ್ತು ನಿಮ್ಮ ಎಸ್ಇಒ ಅನ್ನು ಹೆಚ್ಚಿಸಬಹುದು. ರಿಯಾಕ್ಟ್ನ ಅಂತರ್ಗತ React.lazy()
ಮತ್ತು <Suspense>
ಕಾಂಪೊನೆಂಟ್ಗಳು ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್ಗಳಲ್ಲಿ ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಅಳವಡಿಸಲು ಸುಲಭವಾಗಿಸುತ್ತದೆ. ಜಾಗತಿಕ ಪ್ರೇಕ್ಷಕರಿಗಾಗಿ ವೇಗವಾದ, ಹೆಚ್ಚು ಸ್ಪಂದಿಸುವ ಮತ್ತು ಹೆಚ್ಚು ಆಕರ್ಷಕವಾದ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಈ ತಂತ್ರಗಳನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳಿ.
ಲೇಜಿ ಲೋಡಿಂಗ್ ಅನ್ನು ಅಳವಡಿಸುವಾಗ ಯಾವಾಗಲೂ ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ಪರಿಗಣಿಸಲು ಮರೆಯದಿರಿ. ಮಾಹಿತಿಯುಕ್ತ ಫಾಲ್ಬ್ಯಾಕ್ UIಗಳನ್ನು ಒದಗಿಸಿ, ಸಂಭಾವ್ಯ ದೋಷಗಳನ್ನು ಸರಿಯಾಗಿ ನಿರ್ವಹಿಸಿ, ಮತ್ತು ನೀವು ಬಯಸಿದ ಫಲಿತಾಂಶಗಳನ್ನು ಸಾಧಿಸುತ್ತಿದ್ದೀರಾ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಎಚ್ಚರಿಕೆಯಿಂದ ವಿಶ್ಲೇಷಿಸಿ. ವಿಭಿನ್ನ ವಿಧಾನಗಳೊಂದಿಗೆ ಪ್ರಯೋಗ ಮಾಡಲು ಮತ್ತು ನಿಮ್ಮ ನಿರ್ದಿಷ್ಟ ಅಗತ್ಯಗಳಿಗೆ ಉತ್ತಮ ಪರಿಹಾರವನ್ನು ಕಂಡುಕೊಳ್ಳಲು ಹಿಂಜರಿಯಬೇಡಿ.