如何将打字稿包拆分成多个子模块?
How to split a typescript package into multiple submodules?
我最新的打字稿项目分为不同的模块和子模块。
我的文件结构:
package.json
(...)
/src
| /module1
| | index.ts
| | (...)
| | /subModule1
| | | index.ts
| | | (...)
| | /subModule2
| | index.ts
| | (...)
| /module2
| index.ts
| (...)
每个(子)模块都有一个 index.ts
文件保存模块的导出。
现在我终于要发布我的包了。应该能够从
模块如下:
import { A } from "package/module1";
import { B, C } from "package/module1/subModule2";
我已经使用这种语法从 npm 上的其他包导入内容。但是我找不到关于如何实现这种行为的任何解释。我发现一些文章解释了多个文件,但没有解释文件夹和子文件夹中结构的多个模块。
请参阅 Node 文档中的“子路径导出”:
示例:
{
"main": "./main.js",
"exports": {
".": "./main.js",
"./submodule": "./src/submodule.js"
}
}
这篇文章可能对您有所帮助:
- Node.JS (New) Package.json Exports Field 作者:托马斯·贾斯特
加上本期 GitHub 上的一些 TypeScript-specific 信息:
既然你说你已经在从 npm 上的其他包导入东西时使用了这种语法,那么你也可以查看这些包的源代码以了解它们是如何做到的。
我最新的打字稿项目分为不同的模块和子模块。
我的文件结构:
package.json
(...)
/src
| /module1
| | index.ts
| | (...)
| | /subModule1
| | | index.ts
| | | (...)
| | /subModule2
| | index.ts
| | (...)
| /module2
| index.ts
| (...)
每个(子)模块都有一个 index.ts
文件保存模块的导出。
现在我终于要发布我的包了。应该能够从 模块如下:
import { A } from "package/module1";
import { B, C } from "package/module1/subModule2";
我已经使用这种语法从 npm 上的其他包导入内容。但是我找不到关于如何实现这种行为的任何解释。我发现一些文章解释了多个文件,但没有解释文件夹和子文件夹中结构的多个模块。
请参阅 Node 文档中的“子路径导出”:
示例:
{
"main": "./main.js",
"exports": {
".": "./main.js",
"./submodule": "./src/submodule.js"
}
}
这篇文章可能对您有所帮助:
- Node.JS (New) Package.json Exports Field 作者:托马斯·贾斯特
加上本期 GitHub 上的一些 TypeScript-specific 信息:
既然你说你已经在从 npm 上的其他包导入东西时使用了这种语法,那么你也可以查看这些包的源代码以了解它们是如何做到的。