2016-10-10 186 views
5

想要在ES6 javascript中實例化一個模塊並將其轉儲到ES5。我在我的項目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是不是構造

+2

從'./track'導入曲目 – Kevin

回答

5

問題是與你在index.js進口Track的方式。你需要或者進口這樣的:

import Track from './track'; 

或者在track.js,你需要將它導出這樣的:

export {Track} 
8

要導出Track爲默認值,所以你應該使用默認的導入。更改

import { Track } from './track'; 

import Track from './track'; 

What is "export default" in javascript?


當你做你試圖訪問導出對象的Track財產(這是田徑類),這是未定義的(所以它不是構造函數)。