如何保持“需要”用于动态表达式

时间:2018-07-26 11:54:47

标签: node.js webpack webpack-4

我想捆绑一个Node.js脚本,该脚本在某处称为require(expression)。将脚本与webpack捆绑在一起后,require失败。这是一个超级简化的示例:

// main.js
const x = require(process.argv[2])
console.log(x)

对于这种情况,我希望有一个“正常”的要求,或者告诉webpack包含一个我知道将来(捆绑后)需要的特定文件。坚持这个例子,我知道捆绑之前process.argv[2]的值。

注意:执行基于表达式的require的代码是依赖项,因此我无法调整需求代码。

这是我的webpack.config.js

module.exports = {
  entry: './test.js',
  output: {
    filename: 'test.js'
  },
  target: 'node'
}

1 个答案:

答案 0 :(得分:1)

require 路径是相对于它所使用的文件的。因此,您需要弄清楚从 require 执行到加载文件的路径。从参数开始。然后在相关部分的前面加上参数。