2016-12-15 20 views
13

我正在使用React/Webpack 2等。我有Karma測試運行器,當我運行我的測試時,我啓動Webpack之前,它會向控制檯警告輸出有關大小等(我無法修復它,因爲它是webpack的東西)。如何禁用優化webpack 2中的警告

如何禁用這些警告?我試圖設置

統計:「無」,但它無法正常工作。

感謝所有幫助

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/ 

附:更新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 
    } 
}; 

回答

21

基於日誌,有兩種類型的警告

  1. 警告......大小限制 - 爲了修復它添加到webpack.config選項performance

    performance: { 
        hints: false 
    } 
    

    推薦禁用hints在開發模式然而,在 生產模式使能

  2. 警告存在與名稱僅在殼體不同的多個模塊。 - 看來這個警告涉及Windows操作系統,有issuegithub上這裏討論這個問題

+1

它的工作原理!我只是將它添加到webpack配置中,但我忘記了在我的Karma中,我只使用了conf.file中的模塊。所以我只是將性能規則添加到了Karma.conf中。非常感謝你的朋友! – Velidan

+0

@Velidan歡迎) –