redwoodjs:一个全堆栈jamstack框架
> Redwoodjs是一个专门为复杂应用程序构建的功能强大,自明的全栈框架,可扩展使用React,GraphQL和无服务器功能的Jamstack体系结构。 它通过脚手架驱动的开发提供了流线型,类似铁轨的开发人员的体验。 密钥功能:
红木类比:像雄伟的红木树一样,框架坚固且可扩展,但其核心仍然令人惊讶地简单易于浏览。git push
>
本教程将指导您构建基本的CRUD应用程序,展示Redwood的易用性。
(github上可用的示例代码)。入门:
>先决条件:
项目设置:
yarn create redwood-app my-redwood-app
cd my-redwood-app
yarn redwood dev
(在浏览器中打开http://localhost:8910
)git init
,git add .
,git commit -m "Initial commit"
项目结构:
Redwood将您的项目组织到web
>(前端)和api
>(后端)目录中,简化了开发过程。目录包括数据库架构定义(api
),种子数据(schema.prisma
),功能,GraphQL架构和服务。该目录包含反应组件,布局,页面和静态资产。
seed.js
web
创建一个数据库:
,,,
和和Author
>字段创建id
>表。 相应地修改name
,然后:email
>
topic
createdAt
创建迁移:api/db/schema.prisma
yarn redwood db save create authors
yarn rw db up
脚手架crud应用程序:>使用:
Author
这会生成必要的组件,服务和GraphQL架构。 根据需要调整yarn rw g scaffold author
的组件以处理可选字段。
了解Redwood的数据处理:
>
AuthorForm
Redwood使用GraphQl进行数据交互。前端使用Apollo客户端将请求发送到后端的无服务器功能。 生成的
>使用PRISMA处理数据库交互。 Redwood的“单元格”简化了数据获取和错误处理。
测试: authors.sdl.js
authors.js
Redwood集成了开玩笑的单位测试。 使用
结论:
经常询问问题(为了清晰和简洁而重新格式化):
是什么区别了红木与其他jamstack框架?
无服务器支持吗? 与静态反应的比较>反应静态是静态位点发生器。 Redwood是一个具有后端功能的全栈框架。
最佳实践?>保持关注点(数据和UI)的分离,有效地使用无服务器功能,利用单元格进行数据处理,并将PRISMA用于数据库交互。>
>错误处理?>单元格处理错误状态,为错误管理和用户反馈提供了清晰的机制。
>>数据库支持Prisma?> Prisma紧密集成,其他数据库可能需要其他配置。
>身份验证吗? 大型应用程序的可扩展性? >入门?
请参阅官方的红木文档和教程。>
以上是学习Redwood,一个全堆栈,无服务的Jamstack框架的详细内容。更多信息请关注PHP中文网其他相关文章!