Firebase开发导入db报错:'db'未从'./firebase'导出该如何解决?
导入db报错的解决方案
问题根因
你当前的导出语法和导入语法不匹配:你在firebase配置文件中使用默认导出输出了包含db、auth的对象,但Feed.js中使用的是命名导入的写法引入db,二者规则不兼容导致报错。
解决方案(二选一即可)
方案1:保持现有导出语法,修改Feed.js的导入写法
将Feed.js中原先的命名导入写法,替换为默认导入后解构获取db:
// Feed.js中修改导入代码 import firebaseUtils from './firebase'; const { db } = firebaseUtils;
方案2:保持现有Feed.js的导入写法,修改firebase配置文件的导出语法
将firebase配置文件末尾的默认导出,改为命名导出:
// firebase/index.js中修改导出代码 // 删掉原来的 export default {db,auth}; 替换为以下写法 export const db = firebaseApp.firestore(); export const auth = firebase.auth();
修改后你Feed.js中原先的import { db } from './firebase'写法就可以正常运行。
补充说明
如果你使用的是Firebase 9及以上版本,当前你用的旧版命名空间导入方式可能会触发废弃警告,修复完导入导出问题后如果出现相关警告,可以更换为Firebase v9+的模块化API写法即可。
内容的提问来源于stack exchange,提问作者Burak Demir
相关产品推荐
相关产品推荐

