让Webpack在生成打包文件的同时输出单独编译的文件

7

我正在使用webpack加载器ts-loader将typescript源文件编译成javascript包。现在我希望单独编译的javascript文件也被保存,同时保存bundle文件!我熟悉编写非常简单的webpack插件,但我不知道如何实现这个功能。也就是说,我不知道webpack触发哪些事件需要监听以及在哪里找到相关数据。有什么帮助吗?


您不能使用单个的webpack编译文件。这可能会导致“Uncaught ReferenceError:__webpack_require__未定义”的错误。 - Thaadikkaaran
但是我假设 ts-loader 首先使用 TypeScript 编译器将 ts 编译为 js,然后 webpack 才会更改代码中的任何内容,例如 requires,对吗?我只想要那些单独的 js 文件。 - Flion
1个回答

2

如我所评论的,您不能使用webpack编译的单个文件。否则可能会出现“Uncaught ReferenceError: __webpack_require__ is not defined”错误。

最好编写自己的loader或要求ts-loader提供保留转换后源代码的选项。

或者,我已经编写了一个loader,可以将typescript编译后的文件保存为单个文件。

您可以像下面展示的那样使用此loader作为第二个loader或post-loader:

作为第二个loader:

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

作为一个后置加载器,也可以这样理解。
module: {
    loaders: [{
      test: /\.ts?$/,
      loaders: ['ts-loader']
    }],
    postLoader: [{
      test: /\.ts?$/,
      loaders: ['scatter-loader']
    }]
}

Note: scatter-loader work is in progress.


啊,太酷了,你已经为此编写了一个加载器,我会去看看的! - Flion

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接