@endpush @push(\\'scripts\\') @endpush
Dans ce cas, script1.js se chargera avant script2.js car @push ajoute du contenu à la pile dans l'ordre dans lequel il est déclaré.
@push(\\'scripts\\') @vite(\\'resources/js/partial-specific.js\\') @endpush
Lorsque ce partiel est inclus dans une vue, partial-special.js sera ajouté à la pile de scripts dans le fichier de mise en page.
@prepend(\\'scripts\\') @endprepend @push(\\'scripts\\') @endpush
Ici, critic.js se chargera avant non_critical.js, quel que soit leur emplacement dans le fichier Blade.
Si vous avez besoin d'un contrôle plus précis sur l'inclusion de JavaScript, les instructions conditionnelles de Laravel permettent une logique basée sur un itinéraire ou une variable directement dans la mise en page.
Vous pouvez utiliser les vérifications d'itinéraire directement dans la mise en page pour inclure du JavaScript en fonction de l'itinéraire actuel :
@if (request()->routeIs(\\'some.route.name\\')) @vite(\\'resources/js/custom.js\\')@endif
Pour charger conditionnellement des scripts basés sur des variables, vous pouvez définir un indicateur dans le contrôleur ou la vue enfant, puis le vérifier dans la mise en page :
return view(\\'your.view\\', [\\'loadCustomJS\\' => true]);
@if (!empty($loadCustomJS)) @vite(\\'resources/js/custom.js\\') @endif
Cette approche vous permet de contrôler le chargement de JavaScript en fonction de variables ou d'itinéraires spécifiques, offrant ainsi une flexibilité pour les configurations de pages personnalisées.
Voici un bref aperçu des méthodes abordées :
Ces options vous permettent de contrôler précisément le chargement de JavaScript, rendant votre projet Laravel 11 efficace et maintenable.
","image":"http://www.luping.net/uploads/20241111/17313105816731b3f508523.jpg","datePublished":"2024-11-11T16:46:05+08:00","dateModified":"2024-11-11T16:46:05+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}Dans Laravel 11, ajouter du JavaScript à votre projet peut être un jeu d'enfant, grâce à Vite, le regroupeur d'actifs par défaut. Voici comment configurer votre JavaScript pour toutes sortes de scénarios, de l'inclusion globale au chargement conditionnel dans des vues spécifiques.
Dans de nombreux cas, vous souhaiterez peut-être inclure JavaScript globalement dans votre application Laravel. Voici comment organiser et regrouper JavaScript pour une inclusion universelle.
Laravel 11 utilise Vite pour gérer les actifs. Pour le configurer pour regrouper votre JavaScript :
import './custom.js';
@vite('resources/js/custom.js')
Assurez-vous que vite.config.js est configuré pour gérer correctement les importations @vite. Par défaut, cela devrait ressembler à ceci :
import { defineConfig } from 'vite'; import laravel from 'laravel-vite-plugin'; export default defineConfig({ plugins: [ laravel({ input: ['resources/js/app.js'], refresh: true, }), ], });
Pour compiler vos ressources avec Vite :
Pour inclure des fichiers JavaScript dans vos modèles, utilisez la directive @vite :
My Laravel App @vite('resources/js/app.js')
Avec cette configuration, JavaScript sera disponible sur tout le site dans un projet Laravel 11.
Lors de l'inclusion conditionnelle de JavaScript dans des vues spécifiques, il est essentiel de comprendre l'ordre dans lequel les modèles Blade sont rendus.
Dans Laravel, les mises en page sont traitées en premier, suivies par les vues individuelles et partielles. Voici le processus de rendu :
En raison de cet ordre, si vous souhaitez ajouter conditionnellement des fichiers JavaScript dans la mise en page en fonction du contenu de la vue enfant, les vérifications de variables standard ne fonctionneront pas. Vous devrez utiliser les directives @stack et @push de Blade pour une gestion plus flexible du JavaScript spécifique à une page.
Pour ajouter du JavaScript à des vues spécifiques, les directives @stack et @push de Laravel offrent une solution efficace, vous permettant d'inclure conditionnellement des scripts dans la mise en page.
Dans votre mise en page, créez une pile pour les scripts spécifiques à une page :
My Laravel App @vite('resources/js/app.js') @stack('scripts') @yield('content')
Dans le fichier Blade spécifique qui nécessite le JavaScript, poussez vers la pile de scripts :
@extends('layout') @section('content') @endsection @push('scripts') @vite('resources/js/custom.js') @endpush
Avec cette configuration, custom.js ne sera inclus que lorsque cette vue spécifique est chargée. Cette méthode fournit une solution propre qui fonctionne avec l'ordre de rendu de Laravel, garantissant que les fichiers JavaScript sont inclus de manière conditionnelle selon les besoins.
Le placement des instructions @push dans une vue Blade est principalement important pour la lisibilité et l'ordre d'exécution. Voici comment utiliser @push efficacement :
@extends('layout') @section('content') @endsection @push('scripts') @vite('resources/js/custom.js') @endpush
@push('scripts') @endpush @push('scripts') @endpush
Dans ce cas, script1.js se chargera avant script2.js car @push ajoute du contenu à la pile dans l'ordre dans lequel il est déclaré.
@push('scripts') @vite('resources/js/partial-specific.js') @endpush
Lorsque ce partiel est inclus dans une vue, partial-special.js sera ajouté à la pile de scripts dans le fichier de mise en page.
@prepend('scripts') @endprepend @push('scripts') @endpush
Ici, critic.js se chargera avant non_critical.js, quel que soit leur emplacement dans le fichier Blade.
Si vous avez besoin d'un contrôle plus précis sur l'inclusion de JavaScript, les instructions conditionnelles de Laravel permettent une logique basée sur un itinéraire ou une variable directement dans la mise en page.
Vous pouvez utiliser les vérifications d'itinéraire directement dans la mise en page pour inclure du JavaScript en fonction de l'itinéraire actuel :
@if (request()->routeIs('some.route.name')) @vite('resources/js/custom.js') @endif
Pour charger conditionnellement des scripts basés sur des variables, vous pouvez définir un indicateur dans le contrôleur ou la vue enfant, puis le vérifier dans la mise en page :
return view('your.view', ['loadCustomJS' => true]);
@if (!empty($loadCustomJS)) @vite('resources/js/custom.js') @endif
Cette approche vous permet de contrôler le chargement de JavaScript en fonction de variables ou d'itinéraires spécifiques, offrant ainsi une flexibilité pour les configurations de pages personnalisées.
Voici un bref aperçu des méthodes abordées :
Ces options vous permettent de contrôler précisément le chargement de JavaScript, rendant votre projet Laravel 11 efficace et maintenable.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3