Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Webpack 仅为某些块生成源映射_Webpack_Source Maps_Chunks - Fatal编程技术网

Webpack 仅为某些块生成源映射

Webpack 仅为某些块生成源映射,webpack,source-maps,chunks,Webpack,Source Maps,Chunks,我正在使用webpack构建我的应用程序。我生成了3个包:app.js、vendor.js和manifest.js。因为我已经将UglifyJsPlugin添加到我的conf中,所以还生成了3个源映射 我只想为我的app.js包生成一个sourcemap,因为其他2个对我来说没用。 有没有办法告诉丑八怪只为我想要的块而不是全部生成一个源映射 以下是我目前拥有的: Asset Size Chunks

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

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

以下是我目前拥有的:

                               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
以下是我想要的:

                               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
这是我的整个conf文件(如果需要):

var ExtractTextPlugin=require(“提取文本网页包插件”);
//var HtmlWebpackPlugin=require('html-webpack-plugin');
var path=require('path');
var webpack=require('webpack');
module.exports={
devtool:“隐藏源映射”,
条目:{
应用程序:'./src/scripts/app',
},
模块:{
规则:[
{
强制执行:“预”,
排除:/node_模块/,
加载器:“eslint加载器”,
选项:{
故障警告:错误,
失败者:是的,
},
测试:/\.jsx?$/,,
},
{
排除:/node_模块/,
用法:['babel-loader'],
测试:/\.jsx?$/,,
},
{
排除:/node_模块/,
使用:[
“巴别塔装载机”,
“样式加载器”,
“css加载程序”,
“sass loader”,
],
用法:ExtractTextPlugin.extract({
回退:“样式加载器”,
使用:[
“css加载程序”,
“sass loader”,
],
}),
测试:/\.scss$/,,
},
],
},
输出:{
文件名:'[name].[chunkhash].js',,
path:path.join(uu dirname,“/dist”),
},
插件:[
新的ExtractTextPlugin('styles.[chunkhash].css'),
//新HtmlWebpackPlugin({
////favicon:path.appFavicon,
//注射:“身体”,
//缩小:{
//collapseBooleanAttributes:没错,
//拼贴空白:对,
//keepClosingSlash:是的,
//removeComments:对,
//删除和声明:是的,
//removeScriptTypeAttributes:true,
//removeStyleLinkTypeAttributes:true,
//useShortDoctype:true,
//   },
//罗尔斯:错,
//模板:path.join(uu dirname,'/src/index.html'),
// }),
新的webpack.DefinePlugin({
“process.env”:{
'NODE_ENV':JSON.stringify('production')
},
'ROLLBAR_ACCESS_TOKEN':JSON.stringify('e39dde52172a4b45a7d6039e5aa369eb'),
}),
新建webpack.HashedModuleIdsPlugin(),
新建网页包.optimize.aggressiveEmergingPlugin(),
新网页包.optimize.OccurrenceOrderPlugin(true),
//这仅适用于从多个块中提取公共模块
//新建webpack.optimize.commonChunkPlugin({
//minChunks:函数(模块、计数){
//返回模块.resource
//&&module.resource.indexOf('node\u modules')=-1
//&&module.resource.match(/\.jsx?$/)
//&&count>2;
//   },
//名称:'普通',
// }),
新建webpack.optimize.commonChunkPlugin({
minChunks:函数(模块){
返回模块.resource
&&module.resource.indexOf('node_modules')!=-1;
},
名称:'供应商',
}),
新建webpack.optimize.commonChunkPlugin({
区块:['vendor'],
名称:'清单',
}),
新的webpack.LoaderOptionsPlugin({
调试:错误,
对,,
}),
新建webpack.optimize.UglifyJsPlugin({
美化:假,,
评论:错,
压缩:{
胡说八道:没错,
警告:错误,
},
裂口:{
保持沉默:没错,
胡说八道:没错,
},
sourceMap:true,
}),
新的webpack.ProvidePlugin({
$:“jquery”,
'window.jQuery':'jQuery',
不可变:“不可变”,
Fluxxor:“Fluxxor”,
jQuery:'jQuery',
时刻:“时刻”,
反应:“反应”,
ReactDom:“ReactDom”,
}),
],
决心:{
别名:{
“~”:path.join(uu dirname,“/src/scripts”),
“@”:path.join(uu dirname,“/src/stylesheets”),
},
扩展:[
“.js”,
“.js.jsx”,
“.jsx”,
“.react.js.jsx”,
],
},
};
使用而不是
devtool
,您将能够排除以下文件:

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