Tidak berjaya melaksanakan kod JavaScript dalam Blade
P粉476046165
P粉476046165 2024-02-25 18:05:56
0
2
432

Saya mempunyai fail bernama all.blade.php yang kelihatan seperti ini:

@component('admin.layouts.content' , ['title' => 'example file'])
   @slot('breadcrumb')
        <li class="breadcrumb-item active">Example File</li>
   @endslot
   ...
@endcomponent

@push('scripts')
    <script>
        Swal.fire({
            title: 'Do you want to save the changes?',
            showDenyButton: true,
            showCancelButton: true,
            confirmButtonText: 'Save',
            denyButtonText: `Don't save`,
        }).then((result) => {
            /* Read more about isConfirmed, isDenied below */
            if (result.isConfirmed) {
                Swal.fire('Saved!', '', 'success')
            } else if (result.isDenied) {
                Swal.fire('Changes are not saved', '', 'info')
            }
        })
    </script>
@endpush

Ini ialah content.blade.php:

@extends('admin.master')

@section('content')
   {{ $slot }}
@endsection

Ini ialah master.blade.php:

<!DOCTYPE html>
  <html>
     <head>
        ...
        @stack('scripts')
     </head>
     <body>
        @yield('content')
     </body>
   </html>

Masalahnya sekarang ialah @push('scripts') ... @endpush tidak berfungsi dan mesej amaran manis tidak dipaparkan.

Jadi apa masalahnya di sini? Bagaimanakah saya boleh menyelesaikan masalah ini dan memanggil @component dan @tolak bersama pada bilah?

P粉476046165
P粉476046165

membalas semua(2)
P粉681400307

Cuba Ctrl+U untuk menyemak sama ada komponen itu ditunjukkan kepada kedudukannya. Juga ambil perhatian bahawa jika anda menggunakan perpustakaan Swallibrary JS, kod Swallibrary sebenar dimuatkan sebelum fungsi fire() dipanggil.

Akhir sekali, sila semak pilihan konsol penyemak imbas anda untuk menentukan sama ada ia adalah ralat JS dan bukan ralat Blade.

P粉494151941

Ganti urutan @push@component

@push('scripts')
    sssccc
@endpush

@component('admin.layouts.content' , ['title' => 'example file'])
   @slot('breadcrumb')
        
@endslot ... @endcomponent

Pilihan lain ialah menukar utama kepada komponen



  
     
        ...
        {{ $scripts ?? '' }}
     
     
        {{ $slot }}
     
   

dan tukar kandungan kepada komponen



    
       {{ $scripts ?? '' }}
    
    {{ $slot }}

   

Anda kemudian boleh menulis all.blade.php sebagai


    
        sssccc
    
    

All

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan