2016-10-10 31 views
5

Muốn tạo mô-đun trong ES6 javascript và chuyển thành ES5. Tôi đang thiết lập một lớp mới trong dự án của tôi, đó là es6/webpack. Tôi có 2 file: track.js trong đó có những điều sau -Lỗi loại - Không phải là người xây dựng

export default class Track { 
    constructor() { 
    this.o = {}; 
    } 
} 

khác là index.js -

import { Track } from './track'; 

const track = new Track(); 
console.log(track); 

Tôi cố gắng để có giao diện điều khiển log cho thấy một đối tượng rỗng. Thay vào đó, tôi nhận được - lỗi chưa gặp: _track.Track không phải là một constructor

+2

Nhập tuyến đường từ './track' – Kevin

Trả lời

5

Vấn đề là với cách bạn đang nhập khẩu Track trong index.js. Bạn cần phải hoặc nhập khẩu như thế này:

import Track from './track'; 

Hoặc trong track.js bạn cần xuất nó như thế này:

export {Track} 
8

Bạn đang xuất khẩu Track như mặc định, vì vậy bạn nên sử dụng nhập khẩu mặc định. Thay đổi

import { Track } from './track'; 

để

import Track from './track'; 

Xem What is "export default" in javascript?


Khi bạn làm bạn đang cố gắng truy cập vào Track tài sản của đối tượng xuất khẩu (đó là lớp Track), đó là không xác định (vì vậy nó không phải là một nhà xây dựng).

Các vấn đề liên quan