V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yodhcn
V2EX  ›  React

2024 年,用 react 开发 SPA 的最佳实践是什么?你会选择 Next.js 吗?

  •  
  •   yodhcn ·
    yodhcn · 2024-07-15 21:42:58 +08:00 · 5505 次点击
    这是一个创建于 415 天前的主题,其中的信息可能已经有所发展或是发生改变。
    虽然 Next.js 也能开发 SPA ,并且自带路由、拥有详细的文档,但它主要是为多页面及服务端渲染设计的,开发 SPA 可以但没必要用 Next.js 。

    可是除了 create-react-app 也想不起其它 SPA 脚手架了,平时没怎关注前端发展,现在 create-react-app 似乎已经很少用了?连 react 官网也是一上来就让你用 Next.js

    2024 年,用 react 开发 SPA ,你会选择哪些技术栈?
    28 条回复    2024-07-19 13:51:24 +08:00
    SayHelloHi
        1
    SayHelloHi  
       2024-07-15 21:44:51 +08:00
    如果 API 不能跨域 就用 Next.js 目前是这么干的 🤣

    再就是看甲方需求
    estk
        2
    estk  
       2024-07-15 21:54:38 +08:00
    NextJS 14 + app folder + NextUI
    estk
        3
    estk  
       2024-07-15 21:55:02 +08:00
    @SayHelloHi #1
    后端转发?
    enchilada2020
        4
    enchilada2020  
       2024-07-15 21:57:28 +08:00 via Android
    CRA 的替代品是 Vite 只是 React 官方文档把它放在了一个特别不起眼的位置
    SniperXu
        5
    SniperXu  
       2024-07-15 22:06:36 +08:00
    我感觉 SPA 直接用 vite 就可以了吧,挺方便的,轮子也挺多的
    wu67
        6
    wu67  
       2024-07-15 22:08:05 +08:00
    react spa 最佳脚手架是 vite. 没有之一.
    BeijingBaby
        7
    BeijingBaby  
       2024-07-15 22:22:36 +08:00
    你也说了,react 官网一上来就让你用 nextjs ,所以肯定是 nextjs 了。
    leo72638
        8
    leo72638  
       2024-07-15 22:30:53 +08:00
    remix 我觉得也可以啊
    paradox8599
        9
    paradox8599  
       2024-07-16 03:26:54 +08:00 via Android
    反正我现在不管什么都是 nextjs ,好用就行了,也没多重,不差那么一点点性能
    agdhole
        10
    agdhole  
       2024-07-16 06:29:40 +08:00
    vite
    sjhhjx0122
        11
    sjhhjx0122  
       2024-07-16 08:27:31 +08:00
    如果没有 seo 需求,我是肯定不会用 nextjs
    BelongLin
        12
    BelongLin  
       2024-07-16 08:39:55 +08:00
    vite or umi
    Track13
        13
    Track13  
       2024-07-16 08:56:49 +08:00
    spa 当然不会去用 nextjs 啊。如果不部署在 vercel 更麻烦。vite 有 react 模板不会有人还不知道吧?
    gogozs
        14
    gogozs  
       2024-07-16 09:05:52 +08:00
    为什么执着于 SPA 呢
    horizon
        15
    horizon  
       2024-07-16 09:23:20 +08:00
    无脑 nextjs
    hanpei
        16
    hanpei  
       2024-07-16 10:22:42 +08:00
    nextjs 部署有什么好方法么
    chenliangngng
        17
    chenliangngng  
       2024-07-16 11:30:48 +08:00
    SPA 为什么要用 nextjs ,多了一堆配置
    fwh
        18
    fwh  
       2024-07-16 11:47:05 +08:00
    蚂蚁的 umijs 、字节的 modernjs
    zhw2590582
        19
    zhw2590582  
       2024-07-16 12:28:07 +08:00
    目前我还是喜欢用 nuxt3
    stew5566
        20
    stew5566  
       2024-07-16 14:15:12 +08:00
    用 vite 感觉不错,vite 的默认 jsx 解析是 react
    xling
        21
    xling  
       2024-07-16 14:47:24 +08:00
    rsbuild + react + mobx + ts
    zhifanlo
        22
    zhifanlo  
       2024-07-16 16:26:52 +08:00
    vite 开发起来很舒服,直接在 https://github.com/vitejs/awesome-vite 选一个模板直接开发就好了。
    jianghu52
        23
    jianghu52  
       2024-07-16 19:51:38 +08:00
    最近看了一个 t3-app 。感觉有点东西
    abc1310054026
        24
    abc1310054026  
       2024-07-17 09:21:58 +08:00
    哥们,cra 虽然 star 很多但是 issue 也爆炸了。

    我之前碰到这个问题直接给我劝退了。https://github.com/facebook/create-react-app/discussions/11767

    大家都已经转 vite 了
    dabingbing
        25
    dabingbing  
       2024-07-17 10:30:16 +08:00
    @hanpei 正好在做 nextjs 项目,也遇到了部署的问题,小交流一下,本地开发,build 之后,整个通过 rsync 同步到服务器上,但是过滤掉源码目录 src ,然后服务器上起个 pm2 ,启动即可
    dabingbing
        26
    dabingbing  
       2024-07-17 10:34:33 +08:00
    本人纯后端,但是用 umijs 和 nextjs 开发过两个个人项目,为啥要换不同的框架,就是玩!!!给我的感觉是,react 开发整体上大同小异,没太大的区别,umijs 开发的时候,机器不怎么响,Build 之后部署也简单,nextjs 开发的时候,风扇几乎没停过( mac pro 也老了),部署也麻烦,但是部署之后,用户体验上,明显 nextjs 更快。 个人推荐 nextjs ,vite 还没用过。
    zeromake
        27
    zeromake  
       2024-07-17 15:23:49 +08:00
    小 demo 直接用浏览器 module + importmap + htm 就完事了,不需要任何 node 环境
    JavenXiao
        28
    JavenXiao  
       2024-07-19 13:51:24 +08:00
    只需要一个纯 react 的话,字节的 rsbuild 是个不错的选择: https://rsbuild.dev/zh/
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1457 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 16:59 · PVG 00:59 · LAX 09:59 · JFK 12:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.