我正在使用React / Webpack 2等。我有Karma测试运行器,当我运行我的测试时,我之前启动了Webpack,它会向控制台发出有关大小等的警告输出(我无法解决它)因为它是webpack的东西。)
如何禁用这些警告?我试着设置
stats:" none" 但它不起作用。
感谢您的帮助
WARNING in ./src/modules/Module1/index.js
There are multiple modules with names that only differ in casing.
This can lead to unexpected behavior when compiling on a filesystem with other case-semantic.
Use equal casing. Compare these module identifiers:
* C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\modules\Module1\index.js
* C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\modules\module1\index.js
Used by 1 module(s), i. e.
C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\routes.js
WARNING in ./src/modules/Module1/containers/Module1.container.js
There are multiple modules with names that only differ in casing.
This can lead to unexpected behavior when compiling on a filesystem with other case-semantic.
Use equal casing. Compare these module identifiers:
* C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\modules\Module1\containers\Module1.container.js
Used by 1 module(s), i. e.
C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\modules\Module1\index.js
* C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\modules\module1\containers\Module1.container.js
Used by 1 module(s), i. e.
C:\work\EazeGamesClient\node_modules\babel-loader\lib\index.js!C:\work\EazeGamesClient\node_modules\eslint-loader\index.js?{"fix":true}!C:\work\EazeGamesClient\src\modules\module1\index.js
WARNING in asset size limit: The following asset(s) exceed the recommended size limit (250 kB).
This can impact web performance.
Assets:
src/containers/Root.container.js (825 kB)
src/containers/Root.container.dev.js (821 kB)
src/store/configureStore.js (629 kB)
src/store/configureStore.dev.js (628 kB)
src/containers/DevTools.js (612 kB)
src/containers/Root.container.prod.js (389 kB)
WARNING in entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (250 kB). This can impact web performance.
Entrypoints:
src/containers/DevTools.js (612 kB)
src/containers/DevTools.js
src/containers/Root.container.dev.js (821 kB)
src/containers/Root.container.dev.js
src/containers/Root.container.js (825 kB)
src/containers/Root.container.js
src/containers/Root.container.prod.js (389 kB)
src/containers/Root.container.prod.js
src/store/configureStore.dev.js (628 kB)
src/store/configureStore.dev.js
src/store/configureStore.js (629 kB)
src/store/configureStore.js
WARNING in webpack performance recommendations:
You can limit the size of your bundles by using System.import() or require.ensure to lazy load some parts of your application.
For more info visit https://webpack.js.org/guides/code-splitting/
P.S。更新1
webpack.testing.config
let process = require("process"),
autoprefixer = require('autoprefixer'),
precss = require('precss'),
webpack = require("webpack"),
helpers = require("./helpers"),
ExtractTextPlugin = require("extract-text-webpack-plugin"),
CssSourcemapPlugin = require("css-sourcemaps-webpack-plugin"),
srcName = "src";
module.exports = {
entry : {
"vendor" : ["react", "react-dom", "react-router", "redux", "react-router-redux"],
"app" : helpers.root(srcName, "index.js")
},
output : {
path : helpers.root("dist"),
publicPath : "/",
filename : "[name].[hash].bundle.js",
chunkFilename : "[id].[hash].bundle.chunk.js"
},
context : helpers.root(srcName),
module : {
rules : [
{
enforce : 'pre',
test : /\.jsx?$/,
loader : 'eslint-loader',
options: {
fix: true,
},
include: helpers.root(srcName)
},
{
test : /\.jsx?$/,
loaders : [
'babel-loader',
],
exclude : /node_modules/
},
{
test : /\.css$/,
loaders : [
'style-loader',
'css-loader?modules',
'postcss-loader',
],
},
],
},
stats: "none",
devtool: 'inline-source-map',
plugins : [
new webpack.LoaderOptionsPlugin({
options : {
eslint : {
configFile : '.eslintrc',
failOnWarning : false,
failOnError : false
}
}
}),
new CssSourcemapPlugin(),
new ExtractTextPlugin("[name].[hash].css")
],
performance: {
hints: false
}
};
答案 0 :(得分:27)
根据日志,有两种类型的警告
警告...大小限制 - 为了解决此问题,请添加到webpack.config
选项performance
performance: {
hints: false
}
建议在开发模式下禁用
hints
但是启用 生产模式
警告有多个模块的名称只有外壳不同。 - 似乎此警告与Windows操作系统有关, github上有issue
在哪里讨论过这个问题