Javascript 网页包合并不访问公共配置变量

Javascript 网页包合并不访问公共配置变量,javascript,webpack,production-environment,Javascript,Webpack,Production Environment,据我所知,webpack merge帮助我们将webpack.config文件分解为更易于管理的块,添加与环境相关的配置 而我们将把生产和开发的特定部分分开 请注意,我们仍将维护一个“通用”配置以保持 东西干了。为了将这些配置合并在一起,我们将使用 一个名为webpack merge的实用程序。使用中的“通用”配置 我们不必在特定环境中复制代码 配置 -网页制作 我的webpack.prod.js中的代码如下: const merge = require('webpack-merge'); co

据我所知,webpack merge帮助我们将webpack.config文件分解为更易于管理的块,添加与环境相关的配置

而我们将把生产和开发的特定部分分开 请注意,我们仍将维护一个“通用”配置以保持 东西干了。为了将这些配置合并在一起,我们将使用 一个名为webpack merge的实用程序。使用中的“通用”配置 我们不必在特定环境中复制代码 配置
-网页制作

我的
webpack.prod.js
中的代码如下:

const merge = require('webpack-merge');
const common = require('./webpack.common.js');

module.exports = merge(common, {
  mode: 'production',
  devtool: 'source-map',
  module: {
    rules: [
      {
        test: /\.(png|svg|jpg|gif)$/,
        use: [
            'file-loader'
        ],
        exclude: [
          path.resolve(__dirname, "node_modules") //NEED TO ACCCESS PATH VARIABLE HERE
        ]
      }
  ]
}
在我的
webpack.common.js
中是变量
path
,我认为
webpack.prod.js
可以访问该变量。我假设没有,因为我遇到了一个错误:

ReferenceError: path is not defined
问题


如何访问公共配置?我是否误解了
webpack merge
的概念?

webpack merge
将获取两个js对象,并使用
lodash
将它们合并。基本上,它返回一个包含两个对象属性的对象


它不能为您提供
path
变量或任何其他变量。您需要在
webpack.prod.js
文件中隐式导入它。

Ahhhh ok。我只是想,当Webpack声明它可以防止代码重复时,我想这意味着我不必重复代码。当你说导入时,你是说
需要
?嗨,你说的
是什么意思?你需要在你的webpack.prod.js文件中隐式导入它
?你有一些代码可以分享吗?塔克斯