⊗jsSpMdDI 218 of 294 menu

Dynamický import ES modulů v JavaScriptu

ES moduly lze importovat dynamicky. Tato schopnost může být někdy užitečná. Podívejme se, jak se to dělá. Předpokládejme, že máme následující modul:

export function func1() { return '1' } export function func2() { return '2' } export default function() { return 'text'; };

Předpokládejme, že chceme tento modul importovat ne okamžitě, ale až po určité události, například po kliknutí na tlačítko:

btn.addEventListener('click', function() { });

Naimportujeme modul pomocí příkazu import:

btn.addEventListener('click', function() { import('./test.js'); });

Příkaz import vrací jako svůj výsledek promise:

btn.addEventListener('click', function() { import('./test.js').then(mod => { }); });

Do proměnné callbacku se dostane objekt s exportovanými funkcemi:

btn.addEventListener('click', function() { import('./test.js').then(mod => { let res1 = mod.func1(); let res2 = mod.func2(); console.log(res1, res2); }); });

To, co je exportováno jako výchozí (default), bude uloženo v klíči default:

btn.addEventListener('click', function() { import('./test.js').then(mod => { let dfn = mod.default; console.log(dfn); }); });

Při importu lze provést destrukturalizaci:

btn.addEventListener('click', function() { import('./test.js').then(({func1, func2}) => { let res1 = func1(); let res2 = func2(); console.log(res1, res2); }); });

Vytvořte modul, který exportuje pole názvů dnů v týdnu. Po stisknutí tlačítka importujte tento modul a vypište dny v týdnu jako seznam ul.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout