0

我正在将仅 js (es5) 的项目迁移到 webpack + es6 + Typescript。在迁移之前,所有的 js 文件都被简单地连接起来,现在我想从 webpack 开始做同样的事情。

问题:当 eslint-loader 输出错误时,我会为每个 eslint 错误得到一个包含所有 webpack-entry 文件的长列表。

作为第一阶段,我不想将代码更改为仅依赖于导入并保持连接。

我有以下 webpack conf:

const glob = require("glob");
const path = require('path');
const pkg = require(path.join(__dirname, '../package.json'));

module.exports = (env) => {
    const isProd = env === "production";
    const config = {
        rootDir: path.join(__dirname, '../root/'),
        buildDir: path.join(__dirname, '../build/')
    }
    return {

        entry: {

            App: [
                `${config.rootDir}/app.module.js`,
                `${config.rootDir}/app.config.js`,
                `${config.rootDir}/app.controller.js`,
                ...glob.sync(`${config.rootDir}/nodes/**/*.js`)
            ],
            Documents: [
                `${config.rootDir}/nodes/appNodes.module.
                `${config.rootDir}/documents/documentation.js`,
            ]

        },
        output: {
            path: `${config.buildDir}/js/`,
            filename: `${pkg.name}[name].min.js`
        },
        watch: !isProd,
        resolve: {
            extensions: ['.ts', '.tsx', '.js']
        },
        devServer: {

            contentBase: path.join(__dirname, '../dist/'),
            port: 2222

        },
        devtool: isProd? 'source-map' : 'cheap-module-eval-sourcemap',
        module: {
            rules: [
                { test: /.tsx?$/, use: ['awesome-typescript-loader'] },
                { test: /.jsx?$/, use: [
                        {loader: 'awesome-typescript-loader'},
                        {
                            loader: 'eslint-loader'
                            // options: {formatter: friendlyFormatter}
                        }
                    ]
                },
                { test: /.html$/, use: 'raw-loader' },
                { test: /\.json$/, use: 'json-loader' },
                { test: /\.(s*)css$/, use: ['style-loader', 'css-loader', 'sass-loader'] }
            ]
        },
        plugins: [

        ]
    }

}

这是单个错误的示例(我有很多):

    ERROR in ./root/nodes/upperBar/mtSCBUpperBar.js

    /Users/nadavp/mt5/root/webapp/mt.web.ui/root/nodes/upperBar/mtSCBUpperBar.js
      28:1  error  Expected indentation of 8 spaces but found 12  indent
      29:1  error  Expected indentation of 8 spaces but found 12  indent

    ✖ 2 problems (2 errors, 0 warnings)
      2 errors, 0 warnings potentially fixable with the `--fix` option.

     @ multi ./root//app.module.js ./root//app.config.js ./root//app.controller.js 
./root/nodes/appNodes.module.js 
./root/nodes/dashboard/mtWidget.js 
./root/nodes/dashboard/mtDash.js 
./root/nodes/dashboard/mtAWidget.js 
....

对于每个有错误的文件,文件列表一直在继续……我需要隐藏这个列表。有任何想法吗?

4

1 回答 1

0

终于找到了!!我添加到 webpack 配置中:

stats: {
    moduleTrace: false
}
于 2018-02-06T15:03:48.473 回答