17

React/Webpack 2 などで作業しています。Karma テスト ランナーがあり、テストを実行するときに以前に Webpack を起動すると、サイズなどに関する警告出力がコンソールにスローされます (webpack のものであるため、修正できません)。 )。

これらの警告を無効にするにはどうすればよいですか? セットしてみた

stats : 「なし」 ですが、機能していません。

助けてくれてありがとう

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/

PSアップデート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
    }
};
4

1 に答える 1

31

ログに基づいて、2 種類の警告があります

  1. 警告 ... サイズ制限- 修正するには、webpack.configオプションに追加してくださいperformance

    performance: {
      hints: false
    }
    

    開発モードでは無効hintsにすることをお勧めしますが、本番モードでは有効にします

  2. 警告 大文字と小文字のみが異なる名前のモジュールが複数あります。- この警告は Windows OS に関連しているようです。この問題について議論issueしたgithubがあります。

于 2016-12-15T08:52:38.403 に答える