Inerjia + Vue: как сделать что бы в исходнике не показывались ВСЕ роуты?

В Laravel, при использовании пакета Inertia.js совместно с Vue.js, можно настроить маршрутизацию таким образом, чтобы в исходном коде приложения не отображались все роуты.

Для начала, нужно установить и настроить пакет Inertia.js и Vue.js в вашем Laravel-проекте. Оба пакета можно установить через Composer с помощью следующей команды:

composer require inertiajs/inertia-laravel

После установки пакета Inertia.js в Laravel, вам нужно будет создать несколько контроллеров для ваших роутов. Каждый контроллер будет отвечать за обработку определенного маршрута. В контроллерах вы будете возвращать отрисовку компонентов Vue.js, которые затем будут включены в вашем представлении Blade.

Используя контроллеры Inertia.js, вы можете определить специфический набор роутов для вашего приложения. Помимо этого, вы должны использовать файл маршрутизации web.php для настройки всех необходимых маршрутов. Один из способов скрыть роуты от отображения в исходном коде это использование файлов маршрутизации Laravel.

Давайте предположим, что у вас есть контроллер HomeController, который будет обрабатывать главную страницу вашего приложения. Создайте контроллер с помощью следующей команды Artisan:

php artisan make:controller HomeController

После этого вам нужно будет определить метод __invoke внутри контроллера HomeController, который будет отвечать за отображение главной страницы:

namespace AppHttpControllers;

use InertiaInertia;

class HomeController extends Controller
{
    public function __invoke()
    {
        return Inertia::render('Home');
    }
}

Для настройки маршрута главной страницы вы можете воспользоваться файлом маршрутизации web.php. Отредактируйте его, чтобы добавить следующую строку:

use AppHttpControllersHomeController;

Route::get('/', HomeController::class);

Теперь, при обращении к главной странице вашего приложения, Laravel будет использовать контроллер HomeController, чтобы отобразить представление Home.vue внутри вашего представления Blade.

В итоге, только контроллеры и файл маршрутизации были отображены в исходном коде. Нет никакой необходимости отображать каждый определенный маршрут в файле маршрутизации web.php. Таким образом, у вас есть возможность скрыть открытые роуты от пользователей вашего приложения.