书接上回,上回我们已经实现了网站的导航栏,接下来我们要实现网页主体部分,用于介绍我们的网站业务情况。 首先创建/app/components/Main.tsx,这里作为主页的内容入口,然乎在根目录的/app/page.tsx 上面引入这个组件,这样就能在访问主页的时候访问访问到编辑的内容。 好,现在
书接上回,上回我们以及实现了基础布局,接下来我们这章主要讲如何实现logo图标和标题。 上回修改的内容如下: export default function Header() { return ( <header className="fixed top-0 left-0 r
nextjs 实战开发2 Mercury Header头组件开发 上期文章说到,我们已经梳理出开发的流程,并且将脚手架搭建好,本篇文章将对header头组件进行开发。 编写前的准备工作 首先需要把脚手架的page.tsx默认页面进行重置,使其不干扰我们的开发进程,编辑 /app/page.tsx e
在上一章中,您通过添加表单验证和改进可访问性完成了发票路由的构建。在本章中,您将向仪表板添加身份验证。 在本章之中,我们要讨论的主题: 什么是身份验证。 如何使用 NextAuth.js 向您的应用添加身份验证。 如何使用中间件来重定向用户并保护您的路线。 如何使用 React useActionS
在上一章中,我们了解了如何捕获错误(包括404错误)并向用户显示回退。但是,我们仍然需要讨论难题的另一个部分:表单验证。让我们看看如何使用 Server Actions 实现服务器端验证,以及如何使用 React 的useActionState钩子——同时牢记可访问性。 什么是可访问性? 可访问性是
在上一章中,我们学习了如何使用服务器动作来更改数据。让我们来看看如何使用 JavaScript 的 try/catch 语句和 Next.js API 来优雅地处理错误。 在这篇文字中,我们将会讨论: 如何使用特殊error.tsx文件捕获路线段中的错误,并向用户显示后备 UI。 如何使用notFo
书接上回,上回实现了使用Server Action 对数据进行增加存储到数据库当中,同时在存储的同时进行了数据格式类型进行校验,这章节我们将会对数据进行更新。 更新发票表单与创建发票表单类似,但您需要传递发票id来更新数据库中的记录。让我们看看如何获取和传递发票id。 以下是更新发票需采取的步骤:
在上一章中,您使用 URL 搜索参数和 Next.js API实现了搜索和分页。让我们继续处理发票页面,添加创建、更新和删除发票的功能! 在本章中,我们将要讨论几个主题: React Server Actions 是什么以及如何使用它们来改变数据。 如何使用表单和服务器组件。 使用本机formDat
在上一章中,您使用 URL 搜索参数和 Next.js API实现了搜索和分页。让我们继续处理发票页面,添加创建、更新和删除发票的功能! 在本章中,我们将要讨论几个主题: React Server Actions 是什么以及如何使用它们来改变数据。 如何使用表单和服务器组件。 使用本机formDat