,

Vue3 + Laravel: Как создать интерактивную таблицу с пагинацией – подробный урок

Posted by






Vue3 + Laravel: Большой туториал | Как создать интерактивную таблицу с пагинацией

Vue3 + Laravel: Большой туториал | Как создать интерактивную таблицу с пагинацией

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

Шаг 1: Установка Laravel и настройка API

Сначала установим Laravel, используя Composer:


composer create-project --prefer-dist laravel/laravel имя_проекта

Затем создадим модель и миграцию для нашей таблицы данных:


php artisan make:model Data -m

Укажем поля таблицы в миграции и выполним миграцию:


php artisan migrate

Теперь настроим API для получения данных из таблицы. Создадим контроллер и маршруты для этого:


php artisan make:controller DataController

И добавим маршруты в файл routes/api.php:


Route::get('/data', [DataController::class, 'index']);

Шаг 2: Создание Vue3 приложения

Устанавливаем Vue CLI, если еще не установлено:


npm install -g @vue/cli

Создаем новый проект Vue3:


vue create имя_проекта

Шаг 3: Создание компонента таблицы с пагинацией

Создадим компонент Table.vue:



Шаг 4: Получение данных из API с помощью Axios

Устанавливаем Axios, если еще не установлено:


npm install axios

Используем Axios для запроса данных из API в компоненте Table.vue:


// в методе fetchData() компонента Table.vue
axios.get('/api/data', {
params: {
page: this.page,
perPage: this.perPage,
},
})
.then(response => {
this.items = response.data;
})
.catch(error => {
console.error(error);
});

Шаг 5: Использование компонента в приложении Vue3

Добавляем компонент Table.vue в файле App.vue:



Шаг 6: Запуск приложения

Запускаем Laravel приложение на одном порту с Vue3 приложением:


php artisan serve

Запускаем Vue3 приложение:


npm run serve

Теперь мы создали интерактивную таблицу с пагинацией, которая получает данные из Laravel API и отображает их с помощью Vue3. Этот туториал поможет вам освоить работу с Vue3 и Laravel, а также создать мощный функционал для ваших веб-приложений.


0 0 votes
Article Rating
18 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Настоящий Иванович
7 months ago

Спасибо за урок.
Вопрос: как всё-таки вывести ФИО, остальные колонки выводятся благодаря совпадению названия поля в БД и в columns?
И как сделать динамичным количество страниц (в уроке оно всегда равно 5)?

Rafo Virabyan
7 months ago

Спасибо большое

Коля Солдат
7 months ago

Мне жадно необходимы знания в эволюции по laravel. Я долгие годы лепил лендинги и сайты-каталоги на различных CMS, с обычными MySQL БД. Теперь мне жуть как интересно делать highload spa сайты на laravel+vuejs (прежде всего lara).

Курс по lara очень будет любопытен. В частности интересно как избавляться от жирных контроллеров, паттерны, solid, вобщем все что делает хоть шаг за задачи уровня элементарного CRUD. Также по большому счету интересно повышать навык программирования на PHP в принципе и

особняком любопытен разбор всех возможностей php в области ООП. Вокруг много теории но слабо доходит накой черт нужны например enum, dto, di и так не счесть сколько всего, но касательно ООП.

На мой взгляд тут это все сочетается. Вобщем интересен курс не для начинающего а для продолжающего.

Кон ТВ
7 months ago

Vue только как веб-сервер может работать с Laravel? Как jQuery например его нельзя использовать статично?

Artem Unix
7 months ago

работал с laravel countries? покажешь как делать мультиязчные теги категории страны города ?

Pepe Frog
7 months ago

Здравствуйте, очень понравился ролик, но возник вопрос, как с такой архитектурой сделать авторизацию с использование JWTтокенов, как передавать токены, сгенерированные на стороне Laravel клиенту на Vue?

Полина Еремина
7 months ago

Подскажите что за музыка ? Понравилась

ONeal
7 months ago

Супер🎉

Алексей Николаевич
7 months ago

Спасибо большое, отличный туториал!

alex
7 months ago

Отличное видео. Очень жду курс по Laravel от Lectoria!

Osman
7 months ago

🎉🎉🎉🎉 круто

Anatolii ilescu
7 months ago

Спасибо большое Lectoria top!

Aleksandr Hramov
7 months ago

Спасибо за видео

Александр Иванов
7 months ago

спасибо человечище – я вот все изучаю изучаю а начать кодить никак не могу – все время ищу примеры кода – как побороть

Александр Мельник
7 months ago

продолжаю просмотр, но не удержался от написания коментария. Ох уже эти разработчики vite, по всем правилам английского языка нужно произносить как "вайт", но они упрямо требут произносить "вит".

Алексей
7 months ago

Спасибо за видео. Особенно за фильтры и сортировку

Алекс Давс
7 months ago

Привет. Очень качественный курс, спасибо огромное за труды!!!
А можно ссылку на макет сайта я что то не нашел?

Егор Парусов
7 months ago

ууух спасибо огромное, теперь есть чем заняться в свой выходной)