为什么从webpack构建中排除node_modules不会导致问题?

时间:2018-02-14 03:05:50

标签: webpack

很明显,在使用webpack构建react应用程序时,正确的做法是以下面的文件显示的方式排除节点模块。我的问题是“为什么这样可以?”。在我看来,这些节点模块中的代码对于使最小化的JavaScript工作是必要的。我看到的评论如“排除那些文件,因为它们不是必需的”。怎么没有必要呢?

module: {
    rules: [
        {
            test: /\.js?$/,
            loader: 'babel-loader',
            exclude: /node_modules/,
            options: {
                presets: [
                    'react',
                    'stage-2',
                    ['env', { targets: { browsers: ['last 2 versions'] } }]
                ]
            }
        }
    ]
}

1 个答案:

答案 0 :(得分:2)

您在此处看到的exclude会将其排除在babel-loader之外。但是,它们排除在最终输出文件之外。

如果你运行webpack并查看最终的输出文件,你会发现你所包含的所有node_modules都在那里。

这背后的想法是图书馆作者有责任为他们的代码进行所有的转换/编译。