为什么Firebase不部署本地模块



本地我有一个npm模块,我用npm i --save ../shared/安装在Firebase函数中。安装后,我在node_modules中找到了一个文件夹,它是一个符号链接。我能够建立这个项目。到目前为止一切都很好!

但现在我无法部署Firebase功能。我在功能控制台中得到以下错误:

"消息":"生成失败:npm ERR!代码ENOENT\nnpm ERR!syscall打开\nnpm ERR!path/workspace/nod_modules/shared/package.json\nnpm ERR!错误号-2\nnpm ERR!enoent enoent:没有这样的文件或目录,打开'/workspace/nod_module/shared/package.json'\nnpm ERR!enont这与npm找不到文件有关。\nnpm ERR!enont\n\nnpm ERR!此运行的完整日志可在以下位置找到:\nnpm ERR/www data home/.npm/\logs/2021-12-20T11_02_22_672Z-debug.log;错误ID:beaf8772";

可能Firebase没有部署符号文件夹?在firebase.json中,我更新了预部署命令以删除符号文件夹并复制它:

"predeploy": [
"rm -r "$RESOURCE_DIR"/node_modules/shared",
"mkdir "$RESOURCE_DIR"/node_modules/shared",
"cp -r ./shared/. "$RESOURCE_DIR"/node_modules/shared",
"npm --prefix "$RESOURCE_DIR" run build"
]

这些命令将删除符号文件夹并复制文件。我在node_modules中找到它们。

但这也不起作用,因为我再次收到同样的错误消息。

"消息":"生成失败:npm ERR!代码ENOENT\nnpm ERR!syscall打开\nnpm ERR!path/workspace/nod_modules/shared/package.json\nnpm ERR!错误号-2\nnpm ERR!enoent enoent:没有这样的文件或目录,打开'/workspace/nod_module/shared/package.json'\nnpm ERR!enont这与npm找不到文件有关。\nnpm ERR!enont\n\nnpm ERR!此运行的完整日志可在以下位置找到:\nnpm ERR/www data home/.npm/\logs/2021-12-20T11_18_09_566Z-debug.log;错误ID:beaf8772";

你是怎么做到的?

在我的例子中,共享模块只包含类型。因此,作为变通方法,我将其发布到NPM,然后照常安装。

此解决方法有效!

https://docs.npmjs.com/cli/v8/commands/npm-publish

虽然我对这个解决方案并不满意,但目前它已经足够好了。我会尽快发布一个更好的解决方案。

相关内容

  • 没有找到相关文章

最新更新