Outshine

next.js 13 能像 nuxt.js 3 一样在不同端用不同的请求方式嘛?

  •  
  •   Outshine · Apr 4, 2023 · 1966 views
    This topic created in 1182 days ago, the information mentioned may be changed or developed.

    刚用 nextjs (版本为 13.2 并使用 app 目录),发现如果是服务端组件,无论是直接请求还是从其它页面过来,页面的 API 都会在服务端请求并渲染好 html 。

    而 nuxtjs 会自动识别这两种情况,如果是直接请求,则走服务端请求并渲染好 html ,否则就和 SPA 一样,在客户端请求 API 并渲染页面。

    感觉 nextjs 这样反而会增加前端服务器的压力。


    我有两个疑惑:

    • 这样做有啥优点嘛(无论什么情况都在服务端请求 API 数据并渲染)?
    • 有什么办法能改造成 nuxtjs 一样的方式嘛?

    先谢过各位吴彦祖,来自一个刚从 vue 转到 react 的小菜

    3 replies    2023-04-04 18:03:47 +08:00
    Juppiter
        1
    Juppiter  
       Apr 4, 2023
    不太理解你的意思,fetch Data 你完全可以做到直接从客户端去取到数据(用 useEffect 或者 useSWR 这种封装的 hooks )。而且前端服务器压力可以通过 cdn cache 的方式解决掉啊。
    fd9xr
        2
    fd9xr  
       Apr 4, 2023 via iPhone
    first paint with useable content, 没压力, 不能
    Outshine
        3
    Outshine  
    OP
       Apr 4, 2023
    @Juppiter 如果使用了 `useEffect` 那么这个组件就必须声明为客户端组件了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   864 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 42ms · UTC 19:56 · PVG 03:56 · LAX 12:56 · JFK 15:56
    ♥ Do have faith in what you're doing.