Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Best way to import and extend a class in ES6

I want to create a class in one file, import and extend it in another. Something like:

/* someclass.js */
    export class SomeClass {}

/* somesubclass.js */
        import SomeClass from './someclass'
        class SomeSubClass extends SomeClass {}

Is it possible or is there any better way to do this (e.g. using node.js module.exports)?

like image 334
AlexNasonov Avatar asked Jan 23 '16 18:01

AlexNasonov


1 Answers

Your example is almost correct. You can export your class as default:

export default class SomeClass {}
// and then import
import SomeClass from './someclass';
class SomeSubClass extends SomeClass {}

or use named export:

export class SomeClass {}
// and then import
import { SomeClass } from './someclass';
class SomeSubClass extends SomeClass {}

See export syntax on MDN.

like image 163
madox2 Avatar answered Sep 28 '22 07:09

madox2