Интеграция Vue 3 с Laravel 8: подробное руководство

В этом уроке мы рассмотрим различные методы плавной интеграции Vue 3 в Laravel 8, сочетая мощь фронтенд-разработки с надежностью платформы Laravel. Мы рассмотрим различные подходы, предоставив примеры кода и пошаговые инструкции, которые помогут вам начать работу. Итак, приступим!

Метод 1: использование Vue CLI с Laravel Mix
Первый метод предполагает использование Vue CLI и Laravel Mix, мощной комбинации, которая позволяет вам формировать и создавать компоненты Vue в вашем проекте Laravel.

Шаг 1. Установите Laravel 8
Предполагая, что у вас настроен проект Laravel 8, начните с установки Laravel с помощью Composer:

composer create-project --prefer-dist laravel/laravel myproject

Шаг 2. Установите Laravel Mix и Vue CLI
Далее установите Laravel Mix и Vue CLI в качестве зависимостей разработки:

npm install --save-dev laravel-mix vue-loader@next @vue/cli

Шаг 3. Настройка Laravel Mix
Настройте Laravel Mix, добавив следующий код в файл webpack.mix.js:

const mix = require('laravel-mix');
const { VueLoaderPlugin } = require('vue-loader');
mix.js('resources/js/app.js', 'public/js')
    .vue()
    .webpackConfig({
        plugins: [
            new VueLoaderPlugin()
        ]
    });

Шаг 4. Создайте компонент Vue
Создайте новый компонент Vue с помощью Vue CLI. Выполните следующую команду в корневом каталоге вашего проекта:

npx vue create resources/js/components/ExampleComponent

Шаг 5. Включите компонент Vue
Включите компонент Vue в шаблон блейда:

// resources/views/welcome.blade.php
<div id="app">
    <example-component></example-component>
</div>
<script src="{{ mix('js/app.js') }}"></script>

Метод 2: использование встроенных компонентов Vue в шаблоны Blade
Если вы предпочитаете, чтобы компоненты Vue находились непосредственно в шаблонах Blade, вы можете использовать этот метод.

Шаг 1. Создайте компонент Vue
Создайте новый компонент Vue в каталоге resources/js/components:

// resources/js/components/ExampleComponent.vue
<template>
    <div>
        <h1>Hello, Vue 3 in Laravel 8!</h1>
    </div>
</template>
<script>
export default {
    mounted() {
        console.log('Component mounted.');
    }
}
</script>

Шаг 2. Включите компонент Vue в шаблон Blade
Включите компонент Vue в шаблон Blade:

// resources/views/welcome.blade.php
<div id="app">
    <example-component></example-component>
</div>
<script src="{{ mix('js/app.js') }}"></script>

В этом руководстве мы рассмотрели два метода интеграции Vue 3 с Laravel 8. Первый метод включал использование Vue CLI с Laravel Mix, обеспечивая надежную настройку для создания компонентов Vue в проекте Laravel. Второй метод позволил нам включать компоненты Vue непосредственно в шаблоны Blade, обеспечивая большую гибкость для небольших проектов. Выберите метод, который соответствует требованиям вашего проекта, и начните использовать возможности Vue 3 в своих приложениях Laravel 8.

Не забудьте запустить npm run devили npm run watch, чтобы скомпилировать ресурсы после внесения изменений.

Следуя этим методам, вы сможете эффективно интегрировать Vue 3 в свой проект Laravel 8, объединив сильные стороны обеих технологий для создания мощных и быстро реагирующих веб-приложений.