假设我有一个带有一堆导出函数的 typescript 文件 Utils:
export function utilOne(){}
export function utilTwo(){}
我将 index.d.ts 文件添加到我从 Utils 文件导出 * 的文件夹中:
export * from './Utils';
在我的其他类中,我想通过 utils 命名空间访问函数 utilOne 和 utilTwo,例如:
utils.utilOne();
我知道我可以这样导入它:
import * as utils from "./Utils";
但是,因为我会经常使用 utils,所以我希望能够在命名空间中导出 utils,例如:
export {* as utils} from './Utils'; // this doesn't work
然后使用:
import * from "./Utils";
但是 export {* as utils} 不起作用。我可以将 Utils 的所有功能放入一个模块“utils”并导出它,但我不确定这是否是一个好习惯。有没有正确的方法来做到这一点?
最佳答案
import * from
没有。即使在支持它们的语言中,全局进口也被认为是不好的做法。 (例如 python Why is "import *" bad? )
JavaScript/TypeScript 不支持它。毕竟,查看 foo.bar
并知道 bar 来自 foo
而不是 bar
并且不知道 bar 的来源是非常有用的来自(无需克隆和分析整个项目)。 🌹
关于 typescript :导出命名空间中的所有函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38168733/