繁体   English   中英

Expo Firebase 身份验证“尝试从文件中解析模块 `idb` 时”

[英]Expo Firebase Authentication "While trying to resolve module `idb` from file"

这是我的第一个应用程序。 我正在尝试使用 Firebase 进行电子邮件/密码身份验证。 我遵循了基本教程https://firebase.google.com/docs/auth/web/password-auth#web-version-9 ,但我不断收到此错误:

While trying to resolve module `idb` from file '.../node_modules/@firebase/app/dist/esm/index.esm2017.js', the package `/Users/##/##/##/node_modules/idb/package.json` was successfully found. However, this package itself specifies a `main` module field that could not be resolved (`/Users/##/##/##/node_modules/idb/build/index.cjs`. 

我已将其添加到 metro.config.js 中:

  resolver: {
    sourceExts: ['jsx', 'js', 'ts', 'tsx', 'cjs'],
  },

问题仍然存在。

要解决此问题,请在项目根目录中创建一个metro.config.js文件。 在文件中添加文件扩展名cjs 细节

const { getDefaultConfig } = require("@expo/metro-config");

const defaultConfig = getDefaultConfig(__dirname);

defaultConfig.resolver.assetExts.push("cjs");

module.exports = defaultConfig;

截屏

将 firebase 添加到干净的项目时出现相同的错误。 我认为最新的 firebase 版本有些有趣,所以我已降级到 9.6.11 以暂时解决问题。 希望他们尽快解决...

npm uninstall firebase
npm install firebase@9.6.11

我已经完成了修改,但得到了与下面提到的相同的错误

Unable to resolve "idb" from "node_modules\@firebase\app\dist\esm\index.esm2017.js"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM