JavaScripti koodi tükeldamine edasijõudnutele: marsruudipõhine vs. komponendipõhine | MLOG | MLOG

Selles näites laaditakse komponent MyComponent laisalt, kui MyPage renderdatakse. See tagab, et MyComponent'i kood laaditakse ainult siis, kui kasutaja seda tegelikult näeb või sellega suhtleb.

Näidisstsenaarium: Mõelge globaalsele e-õppe platvormile. Kursuse lehel võivad olla interaktiivsed elemendid nagu viktoriinid või 3D-mudelid. Komponendipõhine koodi tükeldamine saab laadida nende elementide koodi alles siis, kui õpilane nendega tegeleb, mis toob kaasa kiirema esialgse lehe laadimise.

Angular

Kuigi Angular kasutab peamiselt moodulipõhist laisklaadimist, saate komponenditasemel koodi tükeldamise saavutada, kasutades dünaamilisi importimisi oma komponentide sees.

            
// my.component.ts
import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'app-my',
  templateUrl: './my.component.html',
  styleUrls: ['./my.component.css']
})
export class MyComponent implements OnInit {

  dynamicComponent: any;

  async ngOnInit() {
    this.dynamicComponent = await import('./dynamic/dynamic.component').then(m => m.DynamicComponent);
  }

}

            
            
// my.component.html

  


            

See lähenemine laadib DynamicComponent'i alles siis, kui MyComponent on initsialiseeritud. Seda saab kombineerida marsruudipõhise laadimisega parema jõudluse saavutamiseks.

Näidisstsenaarium: Rahvusvahelisel panganduse veebisaidil võib olla keeruline laenutaotlusvorm. Komponendipõhine koodi tükeldamine saab laadida vormi konkreetsete osade (nt sissetuleku kinnitamine, tööajalugu) koodi alles siis, kui kasutaja nendesse osadesse jõuab, optimeerides seeläbi kasutajakogemust.

Vue.js

Vue.js pakub sarnast paindlikkust nagu React komponendipõhiseks koodi tükeldamiseks dünaamiliste importide abil. Seda tehakse Vue komponendi `components` objekti sees.

            




            

Siin laaditakse `AsyncComponent.vue` alles siis, kui `MyPage` renderdatakse.

Näidisstsenaarium: Globaalne reisi broneerimise veebisait saab laadida interaktiivseid kaarte või sihtkohtade virtuaalseid tuure nõudmisel, ainult siis, kui kasutaja klõpsab konkreetsel asukohal. See muudab veebisaidi reageerivamaks ja kasutajasõbralikumaks.

Komponendipõhise koodi tükeldamise eelised

Komponendipõhise koodi tükeldamise puudused

Õige lähenemise valimine

Parim koodi tükeldamise lähenemine sõltub teie rakenduse konkreetsetest omadustest:

Tööriistad ja tehnikad

Mitmed tööriistad ja tehnikad aitavad teil koodi tükeldamist tõhusalt rakendada:

Kaalutlused globaalsele publikule

Globaalsele publikule veebirakendusi arendades on oluline arvestada selliste teguritega nagu võrgu latentsus, ribalaiuse piirangud ja seadmete võimekus erinevates piirkondades. Koodi tükeldamine võib nende väljakutsete lahendamisel mängida olulist rolli:

Parimad praktikad

Koodi tükeldamise eeliste maksimeerimiseks järgige neid parimaid praktikaid:

Kokkuvõte

Koodi tükeldamine on võimas tehnika veebirakenduste jõudluse ja kasutajakogemuse optimeerimiseks. Mõistes erinevaid lähenemisi (marsruudipõhine vs. komponendipõhine) ja neid tõhusalt rakendades, saate oluliselt vähendada esialgset laadimisaega, parandada käitusjõudlust ja luua oma kasutajatele kaasahaaravama kogemuse, sõltumata nende asukohast või seadmest. Võtke koodi tükeldamine omaks ja avage oma JavaScripti rakenduste täielik potentsiaal tänapäeva konkurentsitihedal digitaalsel maastikul.