14

When I am running index.js its giving error SyntaxError: Unexpected token import. Though I am using babel to convert ES6 to ES5.

package.json

{
  "name": "espract",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "scripts": {
    "build": "babel src -d lib"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "babel-cli": "^6.3.17"
  }
}

Person.js

'use strict';

module.exports = class Person {
    constructor(firstname, lastname) {
        this.firstName = firstname;
        this.lastName = lastname;
    }

    greet() {
        console.log(`Hello, ${ this.firstName } ${ this.lastName }`);
    }
};

index.js

import * as Person from './lib/Person';


//es class inherit Person
class Policeman extends Person {

    constructor(firstname, lastname, badgenumber) {
        //call parent constructor
        super(firstname, lastname, badgenumber);
        this.badgeNumber = badgenumber;
    }

    greet(){
        //call parent class method
        super.greet();
        console.log(`License: ${this.badgeNumber}`);
    }

}

var officer = new Policeman("John", "Solan", "1231341314134");
officer.greet();

Note: When I am using var Person = require('./lib/Person') its working absolutely fine.

Please guide me I just started learning nodejs.

wonea
  • 4,783
  • 17
  • 86
  • 139
Pardeep Dhingra
  • 3,916
  • 7
  • 30
  • 56

0 Answers0