我有一个库,将由其他节点的JS项目导入以下目录结构。
my-lib/
├─ dist/
│ ├─ index.js
│ ├─ foo.js
├─ src/
│ ├─ index.ts
│ ├─ foo.ts
├─ package.json
我有以下package.json
{
"name": "my-lib",
"version": "1.0.0",
"description": "",
"main": "dist/index.js"
}
我已经将main
指定为dist/index.js
,所以如果我理解正确的话,从index.ts导出的成员(js)可以导入为import abc from 'my-lib'
。如果我必须从foo.ts访问导出的成员(js)文件,那么我可能会结束做import foo from 'my-lib/dist/foo'
。所以在这里我必须指定dist
文件夹名称在导入路径。有没有办法只指定'my-lib/foo'
而忽略dist
文件夹名称?(就像导入dist/index.js
文件一样。)
2条答案
按热度按时间5hcedyr01#
这可以通过package.json中的子路径导出来实现。
enyaitl32#
正如node.js文档中所解释的,可以添加子路径导出。
在您的情况下,它应类似于以下内容
这样导出后,您可以按如下方式导入