105 votes

Les feuilles de style et le javascript de Laravel ne se chargent pas pour les routes non basiques

Bon, je sais que c'est une question très élémentaire, mais je n'arrive pas à la résoudre. Il s'agit d'une question concernant Laravel.

En fait, mes feuilles de style sont intégrées dans ma vue de mise en page par défaut. Actuellement, je n'utilise que du css normal pour les lier, par exemple :

<link rel="stylesheet" href="css/app.css" />

Cela fonctionne très bien lorsque je me trouve sur une route à un seul niveau, par exemple /à propos mais ne fonctionne plus lorsque je vais plus loin, comme par exemple /A propos de moi .

Si je regarde la console du développeur de Chrome, je vois certaines des erreurs suivantes (uniquement pour les routes les plus profondes) :

Resource interpreted as Stylesheet but transferred with MIME type text/html: "http://example.dev/about/css/app.css".

Il est donc clair qu'il cherche maintenant les css dans le dossier "about" - qui, bien sûr, n'est pas un dossier du tout.

Je veux juste qu'il se trouve au même endroit pour les actifs, quelle que soit la route.

1voto

Manisha Points 72

La meilleure et la plus correcte des façons de faire :

<link rel="stylesheet" href="{{ asset('assets/css/bootstrap.min.css') }}">

0voto

Nishanth ॐ Points 540

Pour Laravel 4 : { !!! pour une double accolade { { {
et pour les versions Laravel 5 et supérieures : vous pouvez remplacer { !!! par {{ et !!} par }} dans les versions supérieures.

Si vous avez placé JavaScript dans un répertoire personnalisé.
Par exemple, si votre jQuery-2.2.0.min.js est placé sous le répertoire resources/views/admin/plugins/js/ puis de la *`.blade.php`** vous pourrez ajouter à la fin de la section comme

<script src="{!! asset('resources/views/admin/plugins/js/jQuery-2.2.0.min.js') !!}"></script>

Puisque la version supérieure supporte également la version inférieure et non l'inverse.

0voto

oceceli Points 111

Dans Laravel 5.8

<script src="{{asset('js/customPath1/customPath2/customjavascript.js')}}"></script>

a juste fait le tour pour moi.

0voto

Mettez votre fichier script dans le répertoire public puis utilisez (par exemple pour userFunctions.js)

<script type="text/javascript" src="{{asset('js/userFunctions.js')}}">

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X