【发布时间】:2022-01-30 02:20:58
【问题描述】:
我是创建 npm 包的新手。
我不希望用户能够从我的包中导入所有内容,例如 Utils 类。
export class Utils implements IUtils {
// ......
}
如何避免?
【问题讨论】:
标签: javascript node.js npm
我是创建 npm 包的新手。
我不希望用户能够从我的包中导入所有内容,例如 Utils 类。
export class Utils implements IUtils {
// ......
}
如何避免?
【问题讨论】:
标签: javascript node.js npm
您可以在package.json 中指定exports 键。设置后,只能从模块访问指定的路径。
文档:https://nodejs.org/api/packages.html#exports
我通常这样做的方式是创建一个index.js 或index.ts 并将其添加到exports。然后,我想公开公开的任何内容,我都会通过索引文件导出。
例如:
// index.ts
export { MyPublicClass } from './MyPublicClass'
【讨论】:
export * from 'module'?
import * as myLib from 'mylib'; export { myLib }