javascript - Next JS 和 Vercel - 开发与生产

标签 javascript reactjs next.js vercel

我在 Next JS 中构建了一个基本的电影数据库应用程序,以了解该框架是如何工作的。该应用程序允许您利用 NextJS API 端点对 Firebase 执行 CRUD 操作。

我的应用程序在开发中运行良好,但它在 Vercel 上根本无法运行。我想知道是否有人可以提供一些线索?

这是初始化时的第一个“获取所有数据”调用。其他 API 调用遵循相同的模式。一旦部署就没有任何作用。

我的索引页有这个 getInitialProps 函数...

Home.getInitialProps = async () => {
    const categories = await getCategories()
    const movies = await getMovies()
    const images = movies.map(movie => {
      return {
        id: `image-${movie.id}`,
        url: movie.cover,
        name: movie.name
      }
    })
    
    return {
      movies,
      images,
      categories
    }
  }

这会在此处触发 getMovies 函数...

export const getMovies = async () => {
    const res = await axios.get('http://localhost:3000/api/movies')
    return res.data

它命中的 API 端点看起来像这样......

import firebase from '../../lib/firebase';

export default async(req, res) => {
    const moviesRef = firebase
            .collection('movies');
            const snapshot = await moviesRef.get();
            const movies = [];
            snapshot.forEach(doc => {
                movies.push({ id: doc.id, ...doc.data() })
            })
            res.json(movies)

提前致谢!

最佳答案

您应该使用您的服务器链接,而不是本地主机。

关于javascript - Next JS 和 Vercel - 开发与生产,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65670727/

相关文章:

javascript - 从使用 Express 的 Node JS 服务器导出一个变量,以便我可以在客户端访问它?

webpack - 在 next.js/api 函数处理程序中要求节点模块的正确方法是什么

javascript - 防止使用 connect web facebook 集成自动登录

javascript - React Native - 跨屏幕传递数据

javascript - 从 <script> 生成的 html 调用 .ts 文件中的函数

reactjs - 通过 Redux 获取数据后应用程序重新启动

javascript - 我想在 Next.js 中的路由更改之前创建一个确认模式

javascript - 在 NextJS 中拥有后备图像的最佳方法是什么?

javascript函数,写完后不起作用

javascript - 如何每 x 秒显示一个新图像?