Node.js 对npm包使用dist文件夹而不是root

Node.js 对npm包使用dist文件夹而不是root,node.js,npm-link,Node.js,Npm Link,我创建了一个Node.js包,该包的用户要引用的文件位于包内的dist文件夹中 现在我不想使用require('my-package/dist/feature')而是require('my-package/feature') 我在package.json中将main和files设置为这个值,但是在本地使用npm link测试包时,我仍然必须使用require('my-package/dist/feature'),否则我会得到找不到模块错误 package.json: "main": "dis

我创建了一个Node.js包,该包的用户要引用的文件位于包内的
dist
文件夹中

现在我不想使用
require('my-package/dist/feature')
而是
require('my-package/feature')

我在
package.json中将
main
files
设置为这个值,但是在本地使用
npm link
测试包时,我仍然必须使用
require('my-package/dist/feature')
,否则我会得到
找不到模块
错误

package.json

  "main": "dist",
  "files": ["dist"],

您需要在包的根目录中添加一个
index.js
,该目录包含您想要公开的包的功能(即从另一个包导入
):

然后,您可以
将它们导入到其他项目中,如下所示:

import { feature1, feature2a } from 'my-package';

在包的根目录中需要一个
index.js
,用于导入并重新导出要公开的包的功能(即从另一个包导入)。
“main”:“dist/index.js”,
import { feature1, feature2a } from 'my-package';