仅为某些块生成源映射

nse*_*ier 5 chunks source-maps webpack

我正在使用 webpack 构建我的应用程序。我生成 3 个包:app.js、vendor.js 和 manifest.js。由于我已将 UglifyJsPlugin 添加到我的 conf 中,因此还生成了 3 个源映射。

我只想为我的 app.js 包生成一个源映射,因为其他 2 个对我来说没有用。有没有办法告诉 uglifier 只为我想要的块生成源映射,而不是全部?

这是我目前拥有的:

                               Asset       Size  Chunks                    Chunk Names
         app.1e1d20f5f417ed9df40d.js     901 kB    1, 2  [emitted]  [big]  app
     app.1e1d20f5f417ed9df40d.js.map    4.24 MB    1, 2  [emitted]         app
    manifest.05867db2f94981c04486.js    1.43 kB       2  [emitted]         manifest
manifest.05867db2f94981c04486.js.map    14.1 kB       2  [emitted]         manifest
     styles.1e1d20f5f417ed9df40d.css    42.3 kB    1, 2  [emitted]         app
 styles.1e1d20f5f417ed9df40d.css.map  108 bytes    1, 2  [emitted]         app
      vendor.2734c5cd65804c943c80.js    1.64 MB    0, 2  [emitted]  [big]  vendor
  vendor.2734c5cd65804c943c80.js.map    11.9 MB    0, 2  [emitted]         vendor
Run Code Online (Sandbox Code Playgroud)

这就是我想要的:

                               Asset       Size  Chunks                    Chunk Names
         app.1e1d20f5f417ed9df40d.js     901 kB    1, 2  [emitted]  [big]  app
     app.1e1d20f5f417ed9df40d.js.map    4.24 MB    1, 2  [emitted]         app
    manifest.05867db2f94981c04486.js    1.43 kB       2  [emitted]         manifest
     styles.1e1d20f5f417ed9df40d.css    42.3 kB    1, 2  [emitted]         app
 styles.1e1d20f5f417ed9df40d.css.map  108 bytes    1, 2  [emitted]         app
      vendor.2734c5cd65804c943c80.js    1.64 MB    0, 2  [emitted]  [big]  vendor
Run Code Online (Sandbox Code Playgroud)

如果需要的话,这是我的整个conf文件:

                               Asset       Size  Chunks                    Chunk Names
         app.1e1d20f5f417ed9df40d.js     901 kB    1, 2  [emitted]  [big]  app
     app.1e1d20f5f417ed9df40d.js.map    4.24 MB    1, 2  [emitted]         app
    manifest.05867db2f94981c04486.js    1.43 kB       2  [emitted]         manifest
manifest.05867db2f94981c04486.js.map    14.1 kB       2  [emitted]         manifest
     styles.1e1d20f5f417ed9df40d.css    42.3 kB    1, 2  [emitted]         app
 styles.1e1d20f5f417ed9df40d.css.map  108 bytes    1, 2  [emitted]         app
      vendor.2734c5cd65804c943c80.js    1.64 MB    0, 2  [emitted]  [big]  vendor
  vendor.2734c5cd65804c943c80.js.map    11.9 MB    0, 2  [emitted]         vendor
Run Code Online (Sandbox Code Playgroud)

谢谢

por*_*ors 5

使用SourceMapDevToolPlugin代替devtool,您将能够排除如下文件:

new webpack.SourceMapDevToolPlugin({
    filename: "sourcemaps/[file].map",
    test: /\.(js|jsx|css)($|\?)/i,
    exclude: /vendor\..+\.js/
})
Run Code Online (Sandbox Code Playgroud)