Project Icon

simple-rsc

轻量级React服务器组件实现演示项目

Simple RSC是一个轻量级React服务器组件实现项目,展示了React服务器组件的基本工作原理。该项目通过Node服务器演示了服务器组件的流式传输,包括打包过程和客户端组件处理。项目还提供了开发者面板,用于观察服务器组件请求在客户端的表现。Simple RSC采用简洁的目录结构,包含app/和server/目录,支持单一索引路由,适合开发者学习和探索React服务器组件技术。

简单的 RSC ⚛️

一个简单的 React 服务器组件实现,你可以自己构建 🙌

在这里观看 Dan Abramov 的现场演示!

⭐️ 目标

  • 🌊 通过简单的 Node 服务器展示 React 服务器组件如何流式传输到浏览器。
  • ⚙️ 演示打包服务器组件并使用 "use client" 指令处理客户端组件的构建过程。
  • 📝 通过开发者面板揭示服务器组件请求在客户端的呈现方式。

入门

首先,禁用"对等依赖"错误并安装依赖项:

npm i --legacy-peer-deps

这是由于实验版本冲突。React 服务器组件仍然相当新!

然后,启动 Node 开发服务器:

npm run dev

这应该会触发构建并在 http://localhost:3000 启动你的服务器。

项目结构

该项目分为 app/server/ 目录。最重要的入口点如下所示:

# 🥞 你的全栈应用
app/ 
  page.jsx # 服务器入口点
  _client.jsx # 请求并渲染 `page.jsx` 的客户端脚本

# 💿 构建并渲染 `app/` 的后端
server.js

🙋‍♀️ 未包含的内容

  • 基于文件的路由约定。 本仓库包含一个单一的索引路由,支持处理查询参数。如果你需要多个路由,可以尝试 NextJS 的新 app/ 目录。
  • CSS-in-JS 的高级打包。 包含了 Tailwind 脚本 用于样式调试。
  • 生产部署建议。 这是一个学习工具,用于展示 React 服务器组件的使用方法,而不是你下一个副项目的基石!有关构建生产就绪应用的建议,请参阅 React 更新的"开始新的 React 项目"指南
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

白日梦AI

白日梦AI提供专注于AI视频生成的多样化功能,包括文生视频、动态画面和形象生成等,帮助用户快速上手,创造专业级内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

讯飞绘镜

讯飞绘镜是一个支持从创意到完整视频创作的智能平台,用户可以快速生成视频素材并创作独特的音乐视频和故事。平台提供多样化的主题和精选作品,帮助用户探索创意灵感。

Project Cover

讯飞文书

讯飞文书依托讯飞星火大模型,为文书写作者提供从素材筹备到稿件撰写及审稿的全程支持。通过录音智记和以稿写稿等功能,满足事务性工作的高频需求,帮助撰稿人节省精力,提高效率,优化工作与生活。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号