Javascript 在同一文件中导出类和函数

Javascript 在同一文件中导出类和函数,javascript,ecmascript-6,Javascript,Ecmascript 6,我在JS文件中有一个类,如: class A { contructor(){} //logic } 在同一个文件中,我喜欢函数: async function b(){} 最后我上了出口课: module.exports = A; 我也可以导出函数“b”吗 您可以执行以下操作: class A {} export async function b() {} export default A 详细说明: 一个模块可以有多个命名导出,但只能有一个默认导出。大多数人会说,最好为

我在JS文件中有一个类,如:

class A {

  contructor(){}

  //logic
}
在同一个文件中,我喜欢函数:

async function b(){}
最后我上了出口课:

module.exports = A;

我也可以导出函数“b”吗

您可以执行以下操作:

class A {}

export async function b() {}

export default A
详细说明:

一个模块可以有多个命名导出,但只能有一个默认导出。大多数人会说,最好为文件设置默认导出,然后将任何其他模块导出为命名导出

对于您的问题,您可以在上面看到,您可以使用A的默认导出,然后还可以使用b作为命名导出。然后可将其导入其他地方,以便:

从'../foo'导入A,{b}

您可能会在大多数OSS中看到这种风格,例如:

import React,{Component,Fragment}来自'React'


{}
外部的导入是默认导出,
{}
内部的导入是命名导出。

module.exports={A,b}?是否要使它们成为类的静态方法?你希望用户的文件导入他们吗?可能的副本和OP看起来是使用了公共的模块,所以这是行不通的。你好@ Josh,所以建议你解释你的答案(连同代码),以考虑作为QORD质量的答案。谢谢。@AnjanaSilva我已经扩展了我的原始答案。@Josh:太棒了。谢谢你的解释。坚持下去。chearsmodule.exports={Authorization,getTxHash};够了。我累了。谢谢@JoshKelly和其他人。