相关疑难解决方法(0)

ES6模块:导出单类静态方法或多个单独方法

我正在使用ECMAScript6模块.从以下选项中导出/导入模块中的多个方法的正确方法是什么?

单类静态方法:

//------ myClass.js ------

export default class myClass {

  static myMethod1() {
    console.log('foo'); 
  }

  static myMethod2(args...) {
    console.log('bar'); 
  }  

}

//------ app.js ------

import myClass from 'myClass';
myClass.myMethod1();    //foo
Run Code Online (Sandbox Code Playgroud)

多种导出方法:

//------ myMethods.js ------

export function myMethod1() {
    console.log('foo');
}

export function myMethod2() {
    console.log('bar');
}

//------ app.js ------
import {myMethod1, myMethod2} from 'myMethods';
myMethod1()    //foo;


//OR
import * as myMethods from 'myMethods';
myMethods.myMethod1()    //foo;
Run Code Online (Sandbox Code Playgroud)

1)导出:一类只是静态方法感觉有点"代码味道",但同样单独导出所有内容确实感觉有点冗长.它只是开发人员偏好还是存在性能影响?

2)导入:'*as'语法是我首选的方法,因为它允许您使用点符号(引用模块和方法)帮助代码可读性.当我可能只使用其中一种方法时,这是否有性能影响?

javascript module class ecmascript-6

38
推荐指数
2
解决办法
2万
查看次数

标签 统计

class ×1

ecmascript-6 ×1

javascript ×1

module ×1