package.json 导出和多种类型声明文件

问题描述 投票:0回答:1

我正在尝试构建一个 TypeScript 库,并希望使用

exports
中的
package.json
字段导出。

从nodejs和webpack的文档中,我看到

exports
是导出模块的推荐方式。

https://nodejs.org/api/packages.html#package-entry-points

https://webpack.js.org/guides/package-exports/

旧的方法是使用“main”、“types”和“module”。

如何使用此方法导出类型声明? 我应该继续使用“类型”字段吗?但是如果我有多个导出怎么办?

这是我的出口样本

"exports": {
    ".": {
      "import": "./dist/A.mjs",
      "require": "./dist/A.js"
    },
    "./A": {
      "import": "./dist/A.mjs",
      "require": "./dist/A.js"
    },
    "./B": {
      "import": "./dist/B.mjs",
      "require": "./dist/B.js"
    }
  }
javascript typescript webpack package.json
1个回答
2
投票

导出可与 Nodejs 配合使用,但 TypeScript 不支持,除非您使用 moduleResolution:bundler/nodenext 等...apollo 库实现此功能的方式是为每个导出路径创建一个

package.json
,如 this

所以在package.json中,编译后的js代码仍然需要

exports
,并且额外的
package.json
也需要TypeScript在开发时查找。

我在这里进行了更详细的讨论。包含示例代码。

© www.soinside.com 2019 - 2024. All rights reserved.