
Nuxt Firebase 绝配firebase-module 五分钟快速上手指南从零接入到第一个 $fire 调用【免费下载链接】firebase-module Easily integrate Firebase into your Nuxt project. 项目地址: https://gitcode.com/gh_mirrors/fi/firebase-module如果你正在用 Nuxt 2 开发项目又想快速接入 Google Firebase 的登录、Firestore、云存储等能力firebase-module就是答案。它只需在nuxt.config.js里注册一行模块就能把$fire全局对象注入项目让你在组件和 Vuex 中直接调用this.$fire.auth、this.$fire.firestore等服务无需任何样板初始化代码。本文将带你从安装、配置到完成第一个$fire调用全程只需五分钟。为什么选 firebase-module一句话介绍Easily integrate Firebase into your Nuxt project轻松把 Firebase 集成进 Nuxt 项目。它的核心卖点✅一站式注册模块写入配置后自动完成 Firebase 初始化✅全局注入$fire组件、页面、中间件、Vuex actions、插件里都能直接调用✅SSR 友好Auth 支持服务端会话恢复数据获取在服务端渲染同样可用✅按需启用服务只开启你用到的功能auth、firestore、storage、messaging 等默认不初始化任何服务✅自带 TypeScript 类型定义见 packages/firebase-module/types/第一步一键安装 firebase-module⚠️ 环境要求本模块面向Nuxt 2与Firebase v8暂不支持 Nuxt 3 及 Firebase v9 模块化写法。在已有 Nuxt 2 项目中执行npm install firebase^8 npm install nuxtjs/firebase也可以换成yarn add firebase^8 yarn add nuxtjs/firebase。想研究源码的话可以克隆仓库查看git clone https://gitcode.com/gh_mirrors/fi/firebase-module克隆后重点看 packages/demo/nuxt.config.ts这是一个开启了全部 Firebase 服务的完整真实示例。第二步配置 nuxt.config.js最快配置方法config里的字段就是 Firebase 控制台「项目概览」页面上的那段 Web 应用配置直接复制粘贴即可。在 nuxt.config.js 中加入modules: [ [ nuxtjs/firebase, { config: { apiKey: apiKey, authDomain: authDomain, projectId: projectId, storageBucket: storageBucket, messagingSenderId: messagingSenderId, appId: appId }, services: { auth: true, // 只开启你需要的服务 firestore: true } } ] ]小贴士配置也可以从 modules 数组中拆出来放到顶层的firebase: {}对象里让 modules 列表更清爽modules: [nuxtjs/firebase], firebase: { // 所有选项写在这里 }services支持auth、firestore、functions、storage、database、messaging、performance、appCheck、analytics、remoteConfig共 10 种每项还可为子对象配置更细的参数完整清单见 packages/docs/docs/guide/options.md。第三步完成你的第一个 $fire 调用模块加载后$fire已注入到应用上下文几乎任何位置都能用this.$fire或app.$fire访问。 组件里创建用户Auth 示例methods: { async createUser() { try { await this.$fire.auth.createUserWithEmailAndPassword(foofoo.foo, test) } catch (e) { this.$toast.error(e.message) } } } Vuex action 里读写 Firestoreexport default { async fetchUser({ commit }, userId) { const ref this.$fire.firestore.collection(users).doc(userId) try { const snap await ref.get() commit(SET_USER, snap.data()) } catch (e) { return Promise.reject(e) } } }$fire和$fireModule有什么区别$fire已初始化的服务实例如$fire.auth、$fire.firestore$fireModuleFirebase 模块本体访问静态方法如$fireModule.firestore.FieldValue.delete()常用 $fire 服务速查表Firebase 服务快捷方式运行端身份验证$fire.auth客户端 服务端Realtime Database$fire.database客户端 服务端Firestore$fire.firestore客户端 服务端云存储$fire.storage客户端 服务端Cloud Functions$fire.functions客户端 服务端云消息$fire.messaging仅客户端性能监控$fire.performance仅客户端数据分析$fire.analytics仅客户端远程配置$fire.remoteConfig仅客户端⚠️ 标记为「仅客户端」的服务messaging、performance、analytics、remoteConfig在服务器端不可用。若代码会执行在服务端记得用if (process.client) { ... }包裹。避坑提醒三个容易踩的坑Nuxt 3 暂不支持——模块只面向 Nuxt 2Nuxt 3 用户可考虑 VueFire Nuxt 模块只支持 Firebase v8 写法——计划用 v9 模块化 API 的话建议手动集成本地调试可用模拟器——auth、firestore等服务都支持emulatorPort配置无需真实项目即可在本地跑通全部流程参考 packages/demo/nuxt.config.ts 中的useEmulators写法。下一步继续探索配置完成后你的 Nuxt 项目已经具备 Firebase 全栈能力。建议按以下顺序深入 模块入口源码packages/firebase-module/lib/module.js 各服务插件实现packages/firebase-module/lib/plugins/ 官方使用文档packages/docs/docs/guide/usage.md 快速开始指南packages/docs/docs/guide/getting-started.md SSR 会话教程packages/docs/docs/tutorials/ssr.md从npm install到this.$fire.auth的第一次调用整个过程不超过五分钟。剩下的就是尽情发挥 Firebase 的能力了【免费下载链接】firebase-module Easily integrate Firebase into your Nuxt project. 项目地址: https://gitcode.com/gh_mirrors/fi/firebase-module创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考