yarn add react react-dom @vitejs/plugin-react @inertiajs/react
// /resources/js/app.jsximport { createInertiaApp } from '@inertiajs/react';import { createRoot } from 'react-dom/client';createInertiaApp({resolve: name => {const pages = import.meta.glob('./Pages/**/*.jsx', { eager: true });return pages[`./Pages/${name}.jsx`];},setup({ el, App, props }) {createRoot(el).render(<App {...props} />);},});
//vite.config.jsimport { defineConfig } from 'vite';import laravel from 'laravel-vite-plugin';import react from '@vitejs/plugin-react';export default defineConfig({plugins: [laravel({input: 'resources/js/app.jsx',refresh: true,}),react(),],resolve: {alias: {"@": "/resources/js",},},});
// app.blade.phpDOCTYPE html><html><head><meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />@viteReactRefresh@vite('resources/js/app.jsx')@inertiaHeadhead><body>@inertiabody>html>
composer require inertiajs/inertia-laravelphp artisan inertia:middlewareuse App\Http\Middleware\HandleInertiaRequests;$middleware->web([HandleInertiaRequests::class,]);