如何从目录中动态导入所有导出的函数?(节点)



我有一个文件main.ts,我想在其中调用导入的函数:

import * as funcs from './functions';
funcs.func1();
funcs.func2();
// and so on...

现在,在与main.ts相同的目录中,我有一个functions目录,它确实有一个声明导出的index.ts文件:

export function1 from 'func1';
export function2 from 'func2';
// and so on...

这些func命名的文件位于functions目录中,所有文件都具有如下声明的函数:

export function func1 (): void {
console.log("Func1");
}

所以我的问题是:是否可以在不声明index.ts文件中的每个函数的情况下,以某种方式动态地将函数从目录functions导出到main.ts

yes和no。您可以指定要导出所有函数的每个文件,但不需要命名每个函数。您可以执行以下操作;

// functions/index.ts
export * from 'func1'
export * from 'func2'
export * from 'func3'
export * from 'func4'
export {onlyThisOneFunction, andThisVariable} from 'func5'

最新更新