Giriş yap

Laravel @stack ve @push Direktifleri

@stack direktifi, belirlenen isimle bir alan oluşturmanızı sağlar. Böylece @push direktifini kullanarak diğer view'larınızda bu alana sayfaya özel içerikler ekleyebilirsiniz.

Örneğin sayfaya özel js, css ya da bir takım diğer kodları bu sayede sadece o sayfaya girince gösterebilirsiniz.

Layout sayfanızda bu örnekte benim ki layouts/index.blade.php şeklinde, <head> etiketimin içerisinde custom-head adında bir alan oluşturdım.

// layouts/index.blade.php
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>{{ config('app.name', 'Laravel') }}</title>
    ..
    @stack('custom-head')
    ..
</head>

Ve artık alt view'larımda o sayfama özel bir css, js ya da herhangi bir kod ekleteceksem @push direktifini kullanabiliriz.

// users.blade.php
@extends('layout')

@push('custom-head')
    <link href="{{ mix('css/users.css') }}">
@endpush
@section ve @yield direktiflerinden farklı olarak, bu direktifler ile birden fazla kez içerik ekleyebilirsiniz. Ancak @section ve @yield direktifleri bir sefere mahsus içerik ekletir.
Ve ek olarak, genişleteceğiniz sayfayı @extends direktifi ile belirlemeniz gerektiğini unutmayın.

Ayrıca bkz: @push @yield @section @extends @prepend

tayfunerbilen
8 gün önce yazdı.
Günlük Film Tavsiyesi