类型错误 - 不是构造函数

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),这是未定义的(所以它不是构造函数)。