我应该在 package.json 中同时使用 `main` 和 `exports` 吗?

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

package.json 的

exports
属性(webpack docsnpm docs)是相对较新的功能,它允许为包定义多个入口点。

例如,我们可以为 require 语法与 import 语法提供不同的入口点,或者我们可以允许像

the-package/foo
the-package/bar
这样的导入。

问题是 - 鉴于我的包具有

exports
属性 - 是否需要具有
main
属性?也许是为了向后兼容旧工具?

package.json
1个回答
0
投票

是的,工具的向后兼容性,例如eslint,是包含“导出”和“主”规则的主要原因。

如果包含这两个规则,则根据 OP 链接到的 npm 文档,“导出”规则优先于支持它的工具,因此如果可以保持向后兼容性,则没有理由不包含这两个规则。

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