webpack:ES6构造函数中的require() -

时间:2016-10-08 09:06:23

标签: dependencies ecmascript-6 webpack require

我使用module.exports

生成了动态JSON文件

A.js

module.exports = {
  regexes: [
    /aaa/,
    /bbb/
  ]
}

当我这样做时,这很好用:

B.js

var config = require('./A');

但现在我有这种情况,路径未知,并作为参数传递给ES6类。所以我试过了:

class B {
  constructor( private dir: string ) {
     const configpath = path.join(dir, 'serverConfig.js');
     const config = require(`${configpath}`);
  }
}

我收到了错误

Critical dependencies: the request of a dependency is an expression

Module not found: Error: a dependency to an entry point is not allowed

它由webpack编译,如

 var configpath = path.join(this.configDir, 'serverConfig.js');
 this.serverConfig = __webpack_require__(24)("" + configpath);

这应该有效,因为这个简单的es5代码显示:

var A = function() {
  var name = 'util';
  var util = require(name);
}

a = new A();

我不确定我在这里做错了什么。是否有要更改的webpack配置?

另外,当我实际运行代码时(因为这只是一个警告),我收到此错误:

Error: Cannot find module '[correctPath]/serverConfig.js'.

其中[correctPath]确实是可见性的缩影。

0 个答案:

没有答案