尝试在工作中的新项目中使用firebase函数。
[这是我唯一能找到的好指南,尽管它已经过时了。]https://www.freecodecamp.org/news/how-to-build-a-todo-application-using-reactjs-and-firebase/
然而,当我到达登录部分后,使用npm i firebase
命令firebase serve
停止工作并给出以下错误:
它只在使用install firebase命令后发生,删除它不起作用,因为登录的授权端需要它。指南和我的唯一区别是我正在构建一个课堂应用程序,但使用它来指导我使用firebase功能,身份验证和firestore的CRUD。
! functions: The Cloud Firestore emulator is not running, so calls to Firestore will affect production.
! Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in D:CodeyThingsFirebaseOpenbrolly-Classroomfunctionsnode_modulesfirebasepackage.json
at throwExportsNotFound (internal/modules/esm/resolve.js:285:9)
at packageExportsResolve (internal/modules/esm/resolve.js:508:3)
at resolveExports (internal/modules/cjs/loader.js:450:36)
at Function.Module._findPath (internal/modules/cjs/loader.js:490:31)
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:888:27)
at Function.Module._load (internal/modules/cjs/loader.js:746:27)
at Module.require (internal/modules/cjs/loader.js:974:19)
at require (internal/modules/cjs/helpers.js:92:18)
at Object.<anonymous> (D:CodeyThingsFirebaseOpenbrolly-ClassroomfunctionsAPIsusers.js:4:18)
at Module._compile (internal/modules/cjs/loader.js:1085:14)
! We were unable to load your functions code. (see above)
只是想让你知道你正在遵循的教程是使用firebase web版本8。X,你可能有版本9。安装了X,正如在这个评论中指出的那样。在同一个问题中,一个用户回答说你需要使用的firebase sdk是firebase admin-sdk。
如果不是这种情况,并且您使用的是正确的SDK版本,那么您可能需要显示如何导入依赖项,这里的解决方案是更改导入。
另外,在文档中,我们可以找到一个警告,不断更新firebase-functions sdk,正如您提到的,您在使用install firebase
命令时得到错误。警告是:
在许多情况下,新特性和bug修复只在最新版本的Firebase CLI和Firebase -functions SDK。经常更新Firebase CLI和将SDK与这些命令放在重火力点项目:
npm install firebase-functions@latest firebase-admin@latest --save npm install -g firebase-tools
这些可能是导致此错误的主要原因。由于您没有提供任何代码,我还将检查通过firebase的更新是否对指南的某些部分进行了其他更改,您可能最终合并了来自不同版本的代码,就像这里所做的那样。