Javascript 在同一文件中导出类和函数
我在JS文件中有一个类,如: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 详细说明: 一个模块可以有多个命名导出,但只能有一个默认导出。大多数人会说,最好为
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和其他人。