Laravel 中调用类型控制器出错

Error with Invoke type controller in Laravel

我在调用类型控制器时遇到问题。 在我使用 php artisan make:controller -i 创建控制器并添加路由后,当转到路由时它告诉我 Invoke 函数不存在。

这是我正在使用的路线:

Route::get('/portfolio','PortfolioController');

控制器代码如下:

<?php
 namespace App\Http\Controllers;
 use Illuminate\Http\Request;

 class PortfolioController extends Controller
 {
 public function __invoke(Request $request)
 {
    /** @var array $portafolio */
    $portafolio = [
        ["title" => "Proyecto #1"],
        ["title" => "Proyecto #2"],
        ["title" => "Proyecto #3"],
        ["title" => "Proyecto #4"],
    ];

    return view("portfolio", compact("portafolio"));
    }
}

我真的不明白为什么会出现这个错误,因为调用函数显然在那里,所以如果有人知道可能是什么问题,我将非常感激。 我使用的是 Laravel.

的最新版本

您需要使用完全限定的 class 名称,如 documentation:

use App\Http\Controllers\PortfolioController;

Route::get('/portfolio', PortfolioController::class);