javascript - nechať webpack vyprodukovať jednotlivé skompilované súbory okrem balíka


Používam webpack loader ts-loader na preklad TypeScript zdrojových súborov do JavaScript balíčka. Teraz by som chcel, aby sa ukladali aj individuálne preložené JavaScript súbory, ako aj balíček! Som oboznámený s písaním veľmi jednoduchého webpack pluginu, ale nie som si istý, ako to implementovať. Teda: neviem, na aké udalosti spúšťané webpackom sa mám naladiť a kde nájsť príslušné údaje. Akákoľvek pomoc?

Odpoveď č. 1

Ako som komentoval, nemôžete používať individuálne súbory zostavené pomocou webpack. Môže to spôsobiť chybu Uncaught ReferenceError: __webpack_require__ is not defined.

Je lepšie napísať si vlastný loader alebo požiadať ts-loader, aby poskytol možnosť ponechať preložený zdroj.

Alebo som napísal loader, ktorý dokáže uložiť skompilované súbory TypeScript ako jednotlivé súbory.

môžete použiť tento loader, druhý loader alebo post-loader, ako je uvedené nižšie

ako druhý nakladač:

module: {
    loaders: [{
      test: /\.ts?$/,
      loaders: ['scatter-loader', 'ts-loader']
    }]
}

alebo ako post-loader

module: {
    loaders: [{
      test: /\.ts?$/,
      loaders: ['ts-loader']
    }],
    postLoader: [{
      test: /\.ts?$/,
      loaders: ['scatter-loader']
    }]
}

Poznámka: scatter-loader práca je vo vývoji.

Súvisiace články