首页 > 解决方案 > 部署 Nuxt 应用程序时如何在 Firebase Functions 中启用 Vuex

问题描述

我正在尝试将 Nuxt SSR 应用程序部署到 Firebase Functions 以从客户端和服务器端提供服务,一切都按预期工作,但是当尝试在@nuxtjs/auth本地实现它时,但在部署到 Firebase 时却不行,查看它说的 Firebase Functions 控制台:

FATAL Enable vuex store by creating store/index.js.

在我的store文件夹中,我有几个用于 vuex 空间的文件,我在那里创建了 index.js 文件并尝试了有无内容,但结果是一样的。

我在部署函数之前所做的是将生成的 .nuxt 文件夹复制到函数文件夹中:

npm run build && rm -rf functions/nuxt && cp -r .nuxt/ functions/nuxt/ && cp nuxt.config.js functions/

之后,这是函数文件夹结构:

在此处输入图像描述

这是函数内部 nuxt 文件夹的结构:

在此处输入图像描述

正如您在 nuxt 文件夹中看到的那样,没有 store 文件夹,只有一个 store.js 文件,阅读它我发现它说:

store = normalizeRoot(require('../store/index.js'), 'store/index.js')

但是存储文件夹是两个文件夹,在根文件夹中,所以我将其更改为:

store = normalizeRoot(require('../../store/index.js'), 'store/index.js')

并尝试手动部署功能,但结果是相同的错误消息。

我不知道如何在 Firebase 功能的服务器端启用 Vuex,我认为通过更改store.js文件我可以解决它,但我需要在每次部署中更改它。解决它的正确方法是什么?谢谢。

标签: vue.jsvuejs2nuxt.jsvuexnuxt-auth

解决方案


当我通过将我的文件夹复制store/functions/文件夹中解决它时,现在 Firebase Functions 控制台什么也没说,它看起来像工作,但我不确定这是否是解决它的正确方法。

我已将我的预部署命令更改为如下所示:

rm -rf functions/nuxt && cp -r .nuxt/ functions/nuxt/ && cp nuxt.config.js functions/ && cp -r store/ functions/

推荐阅读