这个仓库是使用 Next.js 实现的 Laravel Breeze 应用程序/身份验证启动套件前端。所有的身份验证样板代码已经为你编写好了 - 由 Laravel Sanctum 提供支持,让你可以快速开始将漂亮的 Next.js 前端与强大的 Laravel 后端配对。
首先,通过在全新的 Laravel 应用程序中安装 Laravel Breeze 并安装 Breeze 的 API 脚手架,创建一个兼容 Next.js 的 Laravel 后端:
# 创建 Laravel 应用程序... laravel new next-backend cd next-backend # 安装 Breeze 和依赖项... composer require laravel/breeze --dev php artisan breeze:install api # 运行数据库迁移... php artisan migrate
接下来,确保你的应用程序的 APP_URL 和 FRONTEND_URL 环境变量分别设置为 http://localhost:8000 和 http://localhost:3000。
定义适当的环境变量后,你可以使用 serve Artisan 命令启动 Laravel 应用程序:
# 启动应用程序... php artisan serve
然后,克隆这个仓库并使用 yarn install 或 npm install 安装其依赖项。之后,将 .env.example 文件复制为 .env.local,并提供你的后端 URL:
NEXT_PUBLIC_BACKEND_URL=http://localhost:8000
最后,通过 npm run dev 运行应用程序。应用程序将在 http://localhost:3000 上可用:
npm run dev
注意:目前,我们建议在本地开发后端和前端时使用
localhost,以避免 CORS "同源" 问题。
这个 Next.js 应用程序包含一个自定义的 useAuth React 钩子,旨在将所有身份验证逻辑从你的页面中抽象出来。此外,该钩子可用于访问当前已认证的用户:
const ExamplePage = () => { const { logout, user } = useAuth({ middleware: 'auth' }) return ( <> <p>{user?.name}</p> <button onClick={logout}>退出登录</button> </> ) } export default ExamplePage
注意:在访问用户对象的属性时,你需要使用可选链(
user?.name而不是user.name),以适应 Next.js 的初始服务器端渲染。
为了方便起见,可以使用 Ziggy 从 React 应用程序中引用 Laravel 应用程序的命名路由 URL。
感谢你考虑为 Breeze Next 做出贡献!贡献指南可以在 Laravel 文档中找到。
为了确保 Laravel 社区对所有人都是友好的,请查看并遵守行为准则。
请查看我们的安全政策,了解如何报告安全漏洞。
Laravel Breeze Next 是根据 MIT 许可证发布的开源软件。