Uncaught ReferenceError: $ is not defined when using Middleware in Laravel

时间:2021-01-03 22:15:19

标签: php jquery laravel sweetalert2

这些是我的路线

Route::get('/', [HomeController::class, 'index'])->name('home');
Route::get('/proyects', function () { return view('proyects.index'); })->name('proyects');
Route::get('/proyect', function () { return view('proyect.index'); })->name('proyect');
Auth::routes();

Route::middleware(['auth'])->group(function (){
    Route::prefix('admin')->group(function(){
      Route::middleware(['apa'])->group(function () {
       Route::resource('adminPanel', AdminController::class, ['except'=>['create', 'store', 'show']]);
       Route::post('adminPanel/{user}', [AdminController::class, 'show'])->name('adminPanel.show');
       Route::post('adminPanel/{user}/addRole', [AdminController::class, 'addRole'])->name('adminPanel.addRole');
       Route::get('adminPanel/{user}/{role}/rmRole', [AdminController::class, 'rmRole'])->name('adminPanel.rmRole');
       Route::get('adminPanel/filter', [AdminController::class, 'filter'])->name('adminPanel.filter');
       Route::post('adminPanel/{user}/restore', [AdminController::class, 'restore'])->name('adminPanel.restore');
       Route::resource('notice', NoticesController::class, ['except'=>['create', 'show']]);
       Route::resource('inmo', InmobiliariaController::class);
      });
   });
});

这是我的 bootstrap.js

window._ = require('lodash');
window.$ = window.jQuery = require('jquery');
window.swal = require('sweetalert2');

只要我访问 apa 中间件中的任何路由,我就会收到错误消息,并且所有与 jQuery 和 jQuery 相关的代码都停止工作,其中包括 Sweetalert2 之类的包。

这是刀片上的实现示例:

@if(session('status'))
 <script type="text/javascript">
  document.addEventListener('DOMContentLoaded', function () {
      // Your jquery code
      swal.fire('its working');            
  });
  // $( document ).ready(function() {
  //   swal.fire(session('status'));
  // });
 </script>
@endif

我一直在尝试许多不同的不使用 Jquery 的方法,但是像 SWA 这样的包仍然无法正常工作。有没有想过如何解决这个问题?

编辑:SWA2 正在工作,当我不使用 Jquery 进行调用时。但这是一个半解决方案。

这也是我的 layout.blade 中的代码:

{{-- Scripts --}}
<script src="{{ asset('js/app.js') }}" ></script>
@include('layouts.global_scripts')
@yield('scripts')

0 个答案:

没有答案