我必须在Next.js项目中使用express吗?

我正在通过Next.js建立一个网站。 Next.js提供了SSRdynamic routing,因此我认为它比使用React.js更容易。

我有一些问题。

  • 我必须使用express吗?
  • 如果是这样,为什么我必须使用它?
  • express没有提供哪些Next.js的功能?

我认为next buildnext start的页面显示效果与我预期的一样。

非常感谢您:)

ps。由于我不是英语的母语人士,请随时编辑这篇文章。

QQ306551278 回答:我必须在Next.js项目中使用express吗?

您不需要使用express,接下来已经拥有了自己的内置服务器。但是,由于express很流行,因此开发人员可以更轻松地与数据库进行通信或处理其他后端工作。

next.js变得越来越流行,但没有足够的资源来学习。

,

Next.js 和 Express.js 都是服务器端渲染解决方案 (SSR)。但是,您可以使用自定义服务器 API 将 Next.js 与 Express.js 集成,如文档中所述:

大多数情况下,默认的 Next.js 服务器就足够了,但有时您需要运行自己的服务器以集成到现有应用程序中。 Next.js 提供了一个 custom server api

const express = require("express");
const next = require("next");

const port = 3000;
const dev = process.env.NODE_ENV !== "production";
const app = next({ dev });
const handle = app.getRequestHandler();

app.prepare().then(() => {
  const server = express();

  server.get("/test",(req,res) => {
    return app.render(req,res,"/test");
  });
  
  server.get("*",res) => {
    return handle(req,res);
  });

  server.listen(port,(err) => {
    if (err) throw err;
    console.log(`Ready on http://localhost:${port}`);
  });
});

在示例中,它展示了如何使用 get Express 方法处理 Next.js 应用程序中的路由。当用户指向 http://localhost:3000/test 并向下传递 reqres 对象以进行渲染时,上面的代码将在 ./pages/test.js 处渲染 React 组件。

,
  • 我必须使用快递吗? -如果您将通过Now部署它,则不必这样做。但是,如果您要在其他地方托管它,那么可以。
  • 如果是这样,为什么我必须使用它? -Express是投放SSRed页面的网站。
  • Next.js没有提供的哪些express功能有用? Next.js与无服务器服务器(现在)或Express结合使用。这两个是服务Next.js应用程序的选项。
本文链接:https://www.f2er.com/3147377.html

大家都在问