[英]TypeError: is not a constructor
我只是将代码用作关于JavaScript类的学习练习。
代码生成“TypeError:SimpleLogger不是构造函数”。 该类似乎导出Ok但我无法在main.js文件中实例化它。
我已经减少了代码以显示问题。 我想知道是否有人能发现问题。 谢谢。
// In simplelogger.js
"use strict";
class SimpleLogger {
constructor(level) {
this.level = level || DEFAULT_LEVEL;
}
// .... other methods
}
const DEFAULT_LEVEL = 'info';
module.exports = {
SimpleLogger,
DEFAULT_LEVEL
}
// In main.js
"use strict";
const SimpleLogger = require('./simplelogger.js');
let log = new SimpleLogger('info');
错误在最后一行产生。
您正在导出包含SimpleLogger
和DEFAULT_LEVEL
的对象,因此要在main.js中使用它,您需要正确引用它
const SimpleLogger = require('./simplelogger.js').SimpleLogger;
let log = new SimpleLogger('info');
如果您只想导出SimpleLogger
,可以像这样更改导出
module.exports = SimpleLogger
然后,您可以像在代码中一样使用SimpleLogger
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.