在 npm 包中隐藏特定的导出

Hide specific exports in the npm package

我是创建 npm 包的新手。 我不希望用户能够从我的包中导入所有内容,例如 Utils class.

export class Utils implements IUtils {
  // ......
}

如何避免?

您可以在 package.json 中指定 exports 键。设置后,只能从模块访问指定路径。

文档:https://nodejs.org/api/packages.html#exports

我通常这样做的方法是创建一个 index.jsindex.ts 并将其添加到 exports。然后,任何我想公开的东西,我都通过索引文件导出。

例如:

// index.ts
export { MyPublicClass } from './MyPublicClass'