惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
云风的 BLOG
云风的 BLOG
小众软件
小众软件
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Apple Machine Learning Research
Apple Machine Learning Research
博客园 - 司徒正美
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
美团技术团队
宝玉的分享
宝玉的分享
量子位
V
Visual Studio Blog
罗磊的独立博客
Vercel News
Vercel News
B
Blog
J
Java Code Geeks
S
SegmentFault 最新的问题
Recent Announcements
Recent Announcements
有赞技术团队
有赞技术团队
P
Proofpoint News Feed
GbyAI
GbyAI
G
Google Developers Blog
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

Origin

Agent 安全:环境变量泄露 人生第一次离职,感觉应该写点什么 在 Python 中复现 Race Condition 再看看 SQL 中的 null 迁移 Zeabur 集群 2025Q3 订阅 Recap 再见 xlog Python 的 pth 文件:在程序启动前自动执行命令 浏览器从 A 到 Z 2024Q3 订阅 Recap 使用 TypeScript 撰写 OmniFocus 脚本 [备忘] Go init 行为 [随笔] 一开始就公布定价 [随笔] Swift 异步:Task vs DispatchQueue [随笔] RSS 与稍后阅读 在 Shell 脚本中嵌入二进制文件 谈谈时区 利用 Fly.io 部署 Windmill 强制关闭 xLog 的 Dark Mode 解决 CentOS8 中 yum 源失效 [随笔] 避免完美主义导致的看似时间不够
[随笔] Server Action
Singee · 2023-10-27 · via Origin

本文同步自「我的 Memos - 随笔」,你也可访问 x.singee.me 查看我的全部碎碎念

最近在一个自己的小 Side Project 中使用了一下 Server Action,感受大概是

  1. 更多的其实是替换原来的 /api 路由,可以把它想做一个 TypeSafe 的 RPC,原来需要自己去定义 API 然后生成代码,这些 Server Action 直接帮你做了
  2. 因此,感觉原来用了 Next.js 的 /api 路由的,迁移到 Server Action 会有较大的体验提升
  3. Server Action 本质只能向前端发送一个 JSON Object,缺少了标准 HTTP/RPC 的 StatusCode 和 Headers 的能力,因此如果真的想去很好的用它可能 Server 和 Client 仍然需要包一层
  4. 目前 Server Action 实质上缺少触发前端状态更新的逻辑,如果很需要其实可以利用 WebSocket 或者利用「包的那层」来手搓,实现起来其实也不难
  5. 我遇到 Server Action 最主要的问题其实是它触发调用的那层做的事情实在是太多了,会触发很多 React 内部的状态转换逻辑,另外我发现它与 useReducer 一起用甚至还有 bug(哪怕是目前 Next.js 14 Stable 了)

综上,全栈项目玩玩可以,其余的…没啥必要