Чтобы установить React.js в Laravel, вы можете воспользоваться несколькими способами. Вот несколько вариантов с примерами кода:
Метод 1: использование Laravel Mix
Laravel Mix — это инструмент, который упрощает использование популярных инструментов сборки внешнего интерфейса, таких как Webpack. Вы можете использовать его для компиляции компонентов React в вашем приложении Laravel.
Шаг 1. Установите Laravel Mix и React
npm install laravel-mix react react-dom
Шаг 2. Настройка Laravel Mix
В файл webpack.mix.js
вашего проекта Laravel добавьте следующий код:
const mix = require('laravel-mix');
mix.react('resources/js/app.js', 'public/js');
Шаг 3. Создайте компонент React
Создайте новый компонент React в каталоге resources/js
, например, ExampleComponent.js
:
import React from 'react';
function ExampleComponent() {
return (
<div>
<h1>Hello, React!</h1>
</div>
);
}
export default ExampleComponent;
Шаг 4. Включите компонент React в шаблон Laravel Blade
В свой шаблон Laravel Blade включите скомпилированный файл JavaScript и отрисуйте компонент React:
<!DOCTYPE html>
<html>
<head>
<!-- Your head content -->
</head>
<body>
<!-- Your body content -->
<div id="example"></div>
<script src="{{ mix('js/app.js') }}"></script>
<script>
import React from 'react';
import ReactDOM from 'react-dom';
import ExampleComponent from './ExampleComponent';
ReactDOM.render(<ExampleComponent />, document.getElementById('example'));
</script>
</body>
</html>
Метод 2: использование Laravel Livewire
Laravel Livewire — это полнофункциональная платформа для Laravel, которая упрощает создание динамических пользовательских интерфейсов. Он легко интегрируется с React.js.
Шаг 1. Установите Laravel Livewire и React
composer require livewire/livewire
npm install react react-dom
Шаг 2. Создайте компонент Livewire
Создайте новый компонент Livewire с помощью следующей команды:
php artisan make:livewire ExampleComponent
Это создаст новый компонент Livewire в каталоге app/Http/Livewire
.
Шаг 3. Включите компонент React в компонент Livewire
Откройте сгенерированный файл компонента Livewire (ExampleComponent.php
) и добавьте следующий код:
<?php
namespace App\Http\Livewire;
use Livewire\Component;
class ExampleComponent extends Component
{
public function render()
{
return view('livewire.example-component', [
'name' => 'John Doe',
]);
}
}
Шаг 4. Создайте компонент React
Создайте новый файл компонента React (resources/js/comComponents/ExampleComponent.js
) со следующим кодом:
import React from 'react';
function ExampleComponent({ name }) {
return (
<div>
<h1>Hello, {name}!</h1>
</div>
);
}
export default ExampleComponent;
Шаг 5. Включите компонент Livewire в шаблон блейда
В шаблон блейда Laravel включите компонент Livewire с помощью директивы livewire
:
<!DOCTYPE html>
<html>
<head>
<!-- Your head content -->
@livewireStyles
</head>
<body>
<!-- Your body content -->
<livewire:example-component />
<script src="{{ mix('js/app.js') }}"></script>
@livewireScripts
</body>
</html>