找到了新制作的NPM包,但都找不到更深层次的导入引用



这是我第一次发布NPM包,我感觉自己像个新手。我的基本导入不起作用,无论是在模块内部还是在尝试从外部引用包中的特定文件时。整个npm发布->npm安装部件按预期工作。

文件结构为/lib目录,带有/lib/data-types目录。带有导出对象的主文件活在lib中;"助手";文件存在于数据类型中。

- index.js, etc
- /lib
-- connection.js
-- session.js
-- /data-types
--- point.js, etc

我有一个index.js file,它只是其他一些对象的通行证:

import Connection from "./lib/connection.js"
import Session from "./lib/session.js"
export default {
Connection,
Session,
}

我已经在package.json:中定义了主要导出和数据类型

{
"name": "ef-vue-crust",
"type": "module",
"main": "index.js",
"exports": {
"." : "./index.js",
"./data-types/": "./lib/data-type/*.js"
},
...
}

除了前面提到的内部断开连接之外,我的应用程序的基本导入似乎可以工作,即import {Connection} from 'ef-vue-crust'。index.js无法找到以下文件:

import Connection from "./lib/connection.js"
import Session from "./lib/session.js"

找不到模块:错误:无法解析'/lib/session.js位于"C:\Projects\my app\node_modules\ef vue crust"中

直接从./lib/data-type/目录导入文件在我的应用程序中也有同样的问题:

从'@ef-vue-crust/data-types/Point.js'导入点;

有人看到断开了吗?

第1部分:在index.js.中将export default {}更改为export {}

第2部分:看起来我在导出中缺少了一个*

{
"name": "ef-vue-crust",
"type": "module",
"main": "index.js",
"exports": {
"." : "./index.js",
"./data-types/*": "./lib/data-type/*.js"
},
...
}

最后:我在进口产品中有一些完全不匹配的字符串,一旦解决了上述问题,这一点就变得很明显了。

所以我想答案是";注重细节";

最新更新