![](/img/trans.png)
[英]Firebase Error : Module not found: Error: Package path . is not exported from package
[英]Module not found: Error: Package path . is not exported from package
import firebase from 'firebase'
const firebaseConfig = {
apiKey: "AIzaSyBOK7x5N5UnjY4TDqndzH7l5tvdNIsWFRc",
authDomain: "todo-app-e3cf0.firebaseapp.com",
projectId: "todo-app-e3cf0",
storageBucket: "todo-app-e3cf0.appspot.com",
messagingSenderId: "940016886081",
appId: "1:940016886081:web:91686613f16b1b1f8001c0",
measurementId: "G-JHPC7TP12K"
};
const firebaseApp = firebase.initializeApp(firebaseConfig);
const db = firebase.firestore();
export default db;
找不到错误模块:错误:Package 路径。 没有从 package C:\Users\Sairam\Visual Code\todo-list\node_modules\firebase 导出(参见 C:\Users\Sairam\Visual Code\todo-list\node_modules\firebase\package.json 中的导出字段)你是说'./firebase'?
我相信 firebase 最近有很多更新,所以你应该以这种方式更新导入,它的工作就像一个魅力。
import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
const firebaseConfig = {
apiKey: "AIzaSyBOK7x5N5UnjY4TDqndzH7l5tvdNIsWFRc",
authDomain: "todo-app-e3cf0.firebaseapp.com",
projectId: "todo-app-e3cf0",
storageBucket: "todo-app-e3cf0.appspot.com",
messagingSenderId: "940016886081",
appId: "1:940016886081:web:91686613f16b1b1f8001c0",
measurementId: "G-JHPC7TP12K"
};
// Use this to initialize the firebase App
const firebaseApp = firebase.initializeApp(firebaseConfig);
// Use these for db & auth
const db = firebaseApp.firestore();
const auth = firebase.auth();
export { auth, db };
您应该像下面这样导入。 我从 firebase 文档中看到了这一点: https://www.npmjs.com/package/firebase
import { initializeApp } from "firebase/app";
import { getFirestore } from 'firebase/firestore/lite';
const firebaseConfig = {
apiKey: "AIzaSyBOK7x5N5UnjY4TDqndzH7l5tvdNIsWFRc",
authDomain: "todo-app-e3cf0.firebaseapp.com",
projectId: "todo-app-e3cf0",
storageBucket: "todo-app-e3cf0.appspot.com",
messagingSenderId: "940016886081",
appId: "1:940016886081:web:91686613f16b1b1f8001c0",
measurementId: "G-JHPC7TP12K"
};
const firebaseApp = initializeApp(firebaseConfig);
const db = getFirestore(firebaseApp);
export default db;
如果您使用电子反应样板,在webpack.config.renderer.dev.dll.ts
中,从入口点删除 firebase。 例如:
entry: {
renderer: Object.keys(dependencies || {}).filter((it) => it !== 'firebase'),
},
在您的 Firebase 配置文件中,设置 Firebase 如下:
import firebase from 'firebase/compat/app';
import 'firebase/compat/firestore';
import 'firebase/compat/auth';
// Your web app's Firebase configuration
const config = {
//your config json file
};
firebase.initializeApp(config);
export const firestore = firebase.firestore();
export default firebase;
在related.js 脚本中导入 Firestore 和 Firebase 如下:
import {firestore as db} from './firebase-config'
import firebase from './firebase-config';
你在const db = firebase.firestore();
它应该是const db = firebaseApp.firestore();
即使这样做,您也会收到找不到模块的错误。 您需要按以下方式导入
import firebase from 'firebase/compat/app';
import 'firebase/compat/firestore';
这对我有用,因为我有同样的问题!
import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
欲了解更多信息:- https://www.npmjs.com/package/firebase
它的工作谢谢
我注意到我正在将我的 firebase.ts 配置文件作为import db from "firebase"
(绝对导入)
这里的问题是 webpack 是从 node_modules 引用"firebase"
,而不是从我的 firebase.ts 引用。 这就是它抛出该错误的原因。
我通过将我的 firebase 配置作为import db from "../../firebase"
修复它,并且有效
也许我在使用 webpack 时遇到了同样的问题。 我通过设置webpack/configuration/resolve/#resolveconditionnames解决了这个问题
与 v-9.8.2 中一样。 这是文档链接
import { initializeApp } from "firebase/app"; import { getAuth } from "firebase/auth"; import { getStorage } from "firebase/storage"; import { getFirestore } from "firebase/firestore"; import { getDatabase } from "firebase/database"; const firebaseConfig = {}; // Initialize Firebase const app = initializeApp(firebaseConfig); export const firebaseAuth = getAuth(app); export const fbDatabase = getDatabase(app); export const fStore = getFirestore(app); export const fStorage = getStorage(app);
它不起作用,因为您在升级的 Firebase 版本 9 中使用 Firebase 版本 8 代码,所以如果您想解决您的问题,您应该使用以下代码安装 Firebase 版本:
npm i firebase@8.2.3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.