如何在一个 npm 包中暴露多个文件?

How to expose more than one file in an npm package?

我有一个 npm 包。假设 example-package。这是正常的导入方式。

import RootModule from "example-package";

现在我在这里嵌套了一个文件。

Package Root > src > Feature > index.js

现在,如果我必须导入此功能,我会这样做。

import Feature from "example-package/src/Feature";

我能做些什么来避免使用我的 npm 包的开发人员编写长嵌套路径并且他们使用类似这样的东西。

import Feature from "example-package/Feature";

为了清楚起见,Feature 导出多个选项 - { A, B ..}。我不想从包中导入 Feature 并再次从 Feature 中提取选项。不管路径多长都想一斜线导入!

您可以将特征添加为索引的导出 -

index.js:

import Feature from './Feature.js'
export Feature

然后任何使用该包的人都可以像这样导入

import { Feature } from 'example-package'

我在网上找到了解决办法。可能的解决方案是在根文件夹中创建一个包含以下内容的文件 /Feature/index.js

module.exports = require('example-package/src/Feature')

现在可以这样访问了,

import Feature from "example-package/Feature";