我目前正在开发两个npm软件包,每个软件包都带有一个对应的Rails引擎。这两个软件包@swrs/skrw-js和@swrs/pshr-js的设置几乎相同,应该用作向主机应用程序提供前端js功能的库。
两个软件包都通过webpack
进行转译和捆绑。它们在开发中运行良好,可以直接将它们导入主机应用程序中,也可以使用yarn link
:
admin.js
// importing from absolute path
import { Skrw } from "/path/to/skrw-js"
import { Pshr } from "/path/to/pshr-js"
// or after "yarn link <package-name>"
import { Skrw } from "@swrs/skrw-js"
import { Pshr } from "@swrs/pshr-js"
skrw-js / src / index.js
export class Skrw {
start() {
// do something…
}
}
// the pshr-js exports a Pshr class in the same way
现在,尝试发布软件包,使用yarn add <package-name>
安装软件包并导入它们,当我尝试将主机应用程序与webpacker捆绑在一起时,遇到以下错误消息。此错误仅在两个软件包之一中出现::
"export 'Skrw' was not found in '@swrs/skrw-js'
从npm注册表中使用yarn add @swrs/skrw-js
安装后或使用yarn add /path/to/skrw-js
安装后,也会出现相同的导出错误。但是,如上所述,跳过yarn add <package-name>
并在本地使用该软件包不会出现该错误。
该软件包的主要js为./dist/index.js
,host_app/node_modules/@swrs/skrw-js/dist/index.js
和path/to/skrw-js/dist/index.js
之间没有任何区别。
如何安装该软件包似乎破坏了导出?
可在以下位置找到软件包的git,包括package.json,webpack配置等:@swrs/skrw-js和@swrs/pshr-js
感谢您的关注