类型错误 - 不是构造函数
Type Error - Is Not a Constructor
想要在 ES6 javascript 中实例化一个模块并转换为 ES5。我正在我的项目中设置一个新的 class,它是 es6 / webpack。
我有 2 个文件:
track.js 其中有以下 --
export default class Track {
constructor() {
this.o = {};
}
}
另一个是index.js --
import { Track } from './track';
const track = new Track();
console.log(track);
我正在尝试让控制台日志显示一个空对象。
相反,我越来越——
未捕获类型错误:_track.Track 不是构造函数
问题在于您在 index.js
中导入 Track
的方式。您需要像这样导入:
import Track from './track';
或者在 track.js
中,您需要像这样导出它:
export {Track}
您正在默认导出 Track
,因此您应该使用默认导入。变化
import { Track } from './track';
到
import Track from './track';
见What is "export default" in javascript?
当您执行 import { Track } from './track'
时,您正在尝试访问导出对象的 Track
属性(即轨道 class),这是未定义的(所以它不是构造函数)。
想要在 ES6 javascript 中实例化一个模块并转换为 ES5。我正在我的项目中设置一个新的 class,它是 es6 / webpack。 我有 2 个文件: track.js 其中有以下 --
export default class Track {
constructor() {
this.o = {};
}
}
另一个是index.js --
import { Track } from './track';
const track = new Track();
console.log(track);
我正在尝试让控制台日志显示一个空对象。 相反,我越来越—— 未捕获类型错误:_track.Track 不是构造函数
问题在于您在 index.js
中导入 Track
的方式。您需要像这样导入:
import Track from './track';
或者在 track.js
中,您需要像这样导出它:
export {Track}
您正在默认导出 Track
,因此您应该使用默认导入。变化
import { Track } from './track';
到
import Track from './track';
见What is "export default" in javascript?
当您执行 import { Track } from './track'
时,您正在尝试访问导出对象的 Track
属性(即轨道 class),这是未定义的(所以它不是构造函数)。