module export globalnich funkci (commonjs + webpack) rubrika: Programování: JavaScript
Zdravim, v praci jsem dostal za ukol pracovat s "frameworkem" nebo enginem (nebo jak to nazvat), ktery tvori nekolik souboru obsahujici globalni funkce a promenne. chtel bych na tomto enginu vytvorit aplikaci, kterou budu modularizovat a bundlovat pomoci webpacku. bohuzel strukturu toho jadra nemuzu menit, tzn funkce musi byt ve formatu function foo() {}... existuje nejake reseni jak webpacku rict exportuj vsechny funkce v techto souborech do modulu? bylo by vhodnym resenim nechat framework jako nemodul (globalni) a novou cast aplikace modularizovat? dekuji za rady a napady.
Určitě to nejde nijak změnit i při zachování zpětný kompatibility? Viz např. https://github.com/umdjs/umd/blob/master/templates/returnExports.js
Nebo alespoň místo function foo() {} mít window.foo = function foo () {} resp. root.foo = function foo () {}
S UMD nebo alespoň nějakym root objektem jde použít imports-loader https://github.com/webpack-contrib/imports-loader
kde se dá místo toho podstrčit CommonJS module.exports/window/global whatever.
Případně exports-loaderem (https://github.com/webpack-contrib/exports-loader) jde exportnout specifický proměnný/funkce pokud se vyjmenujou.
Jako asi nejzazší možnost je použít script-loader (https://github.com/webpack-contrib/script-loader) kterej to hodí za runtimu do script tagu a pak je to v prohlížečí dostupný bez úprav v globálnim scopu.
Pro plný přístup na Devel.cz se prosím přihlaste:
Nebo se přihlaste jménem a heslem: