⊗jsSpMdDI 218 of 294 menu

Динамичен импорт на ES модули в JavaScript

ES модулите могат да бъдат импортирани динамично. Тази възможност понякога е полезна. Нека да видим как се прави. Нека имаме следния модул:

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

Нека искаме да импортираме този модул не веднага, а при някакво събитие, например при кликване на бутон:

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

Импортираме модула с помощта на командата import:

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

Командата import като резултат връща промис:

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

В променливата на колбъка ще попадне обект с експортираните функции:

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

Това, което се експортира по подразбиране, ще се намира в ключа default:

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

Може да се извършва деструктуриране при импорт:

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

Направете модул, който експортира масив с наименованията на дните от седмицата. При натискане на бутон импортирайте този модул и изведете дните от седмицата като списък ul.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне