За последние 24 часа нас посетили 22658 программистов и 1042 робота. Сейчас ищут 633 программиста ...

router ошибка invoke

Тема в разделе "Laravel", создана пользователем Damir, 25 авг 2022.

  1. Damir

    Damir Новичок

    С нами с:
    6 май 2022
    Сообщения:
    7
    Симпатии:
    0
    Добрый день! помогите плиз, настраивал роутер и сайт перестал отвечать, выдает такую ошибку
    laravel + Vue

    upload_2022-8-25_2-34-53.png

    IndexController.php
    PHP:
    1. <?php
    2.  
    3. namespace App\Http\Controllers;
    4.  
    5. use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
    6. use Illuminate\Foundation\Bus\DispatchesJobs;
    7. use Illuminate\Foundation\Validation\ValidatesRequests;
    8. use Illuminate\Routing\Controller as BaseController;
    9. use Illuminate\Http\Request;
    10.  
    11. class IndexController extends BaseController
    12. {
    13.     public function __invoke()
    14.     {
    15.         return view( 'admin');
    16.     }
    17. }
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.821
    Симпатии:
    736
    Адрес:
    Татарстан
    Ну а роутер показать, из за которого проблемы видимо религия не позволяет?
     
  3. Damir

    Damir Новичок

    С нами с:
    6 май 2022
    Сообщения:
    7
    Симпатии:
    0
    сорян, сразу не подумал.

    router.js

    PHP:
    1. import Vue from 'vue';
    2. import VueRouter from "vue-router";
    3. import admin from "./panel/admin";
    4.  
    5. Vue.use(VueRouter)
    6.  
    7. export default new VueRouter( {
    8.     mode: 'history',
    9.  
    10.     routes: [
    11.         {
    12.             path:'/admin',
    13.             component: admin
    14.         }
    15.     ]
    16. })

    Web.php

    PHP:
    1. <?php
    2.  
    3. use Illuminate\Support\Facades\Route;
    4.  
    5. /*
    6. |--------------------------------------------------------------------------
    7. | Web Routes
    8. |--------------------------------------------------------------------------
    9. |
    10. | Here is where you can register web routes for your application. These
    11. | routes are loaded by the RouteServiceProvider within a group which
    12. | contains the "web" middleware group. Now create something great!
    13. |
    14. */
    15.  
    16. Route::get('/', function () {
    17.     return view('index');
    18. });
    19.  
    20. Auth::routes();
    21.  
    22. Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');
    23.  
    24. Route::get('/{page}', 'IndexController')->where('page', '.*');
     
  4. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    856
    Симпатии:
    132
  5. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.821
    Симпатии:
    736
    Адрес:
    Татарстан
    мб ?
    PHP:
    1. Route::get('/{page}', [App\Http\Controllers\IndexController::class])->where('page', '.*');
     
  6. Damir

    Damir Новичок

    С нами с:
    6 май 2022
    Сообщения:
    7
    Симпатии:
    0
    Это я пробовал переписать, тоже самое
     
  7. Batman

    Batman Активный пользователь

    С нами с:
    9 окт 2006
    Сообщения:
    72
    Симпатии:
    2
    Попробуйте добавить новый метод в контроллер HomeController::show($page)
    PHP:
    1. public function show($page)
    2. {
    3.     return $page;
    4. }
    в web.php
    PHP:
    1. Route::get('/{page}', [App\Http\Controllers\HomeController::class, 'show'])->where('page', '.*');
     
  8. Damir

    Damir Новичок

    С нами с:
    6 май 2022
    Сообщения:
    7
    Симпатии:
    0
    Попробую , спасибо
     
  9. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.551
    Симпатии:
    1.754
    Это почти правильно. Для invoke-контроллеров не нужен массив. https://laravel.com/docs/9.x/controllers#single-action-controllers

    А какую связь vuejs имеет с серверным роутингом?