在ES6中导入和扩展类的最佳方法

Ale*_*nov 6 inheritance class node.js ecmascript-6

我想在一个文件中创建一个类,导入并在另一个文件中扩展它.就像是:

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

/* somesubclass.js */
        import SomeClass from './someclass'
        class SomeSubClass extends SomeClass {}
Run Code Online (Sandbox Code Playgroud)

是否有可能或有更好的方法(例如使用node.js module.exports)?

mad*_*ox2 6

你的例子几乎是正确的。您可以将类导出为默认值:

export default class SomeClass {}
// and then import
import SomeClass from './someclass';
class SomeSubClass extends SomeClass {}
Run Code Online (Sandbox Code Playgroud)

或使用命名导出:

export class SomeClass {}
// and then import
import { SomeClass } from './someclass';
class SomeSubClass extends SomeClass {}
Run Code Online (Sandbox Code Playgroud)

请参阅MDN 上的导出语法。