

GitHub - appstract/laravel-blade-directives: A collection of nice Laravel Blade...
source link: https://github.com/appstract/laravel-blade-directives
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Laravel Blade Directives
A collection of nice Laravel Blade directives.
Installation
You can install the package via composer:
composer require appstract/laravel-blade-directives
Usage
@istrue
Only show when $variable
isset and true.
@istrue($variable) This will be echoed @endistrue
Or when you would like to quickly echo
@istrue($variable, 'This will be echoed')
@isfalse
Same as @istrue
but checks for isset and false.
@isfalse($variable) This will be echoed @endisfalse
@isnull
Only show when $variable
is null.
@isnull($variable) This will be echoed @endisnull
@isnotnull
Same as @isnull
but one shows when $variable
is not null.
@isnotnull($variable) This will be echoed @endisnotnull
@dump and @dd
@dump($var) @dd($var)
Create a HTML element to your Laravel-Mix css or js.
@mix('/css/app.css') @mix('/js/app.js')
Output:
<link rel="stylesheet" href="{{ mix('/css/app.css') }}"> <script src="{{ mix('/js/app.js') }}"></script>
@style
Create a <style>
element or <link>
element with a css path.
@style body { background: black } @endstyle @style('/css/app.css')
@script
Create a <script>
element with or without a js path.
@script alert('hello world') @endscript @script('/js/app.js')
@inline
Load the contents of a css or js file inline in your view.
@inline('/js/manifest.js')
@pushonce
Same as @push
but will include content one time only. Useful for repeatable blocks.
First parameter must follow the syntax stack-name:group-name
.
@pushonce('js:foobar') <script src="{{ asset('/js/foobar.js') }}"></script> @endpushonce
Include pushes with standard @stack
directive:
@stack('js')
@routeis
Checks if the current route name is equal to the given parameter. You can use a wildcard like blog.post.*
.
@routeis('webshop.checkout') Do something only on the checkout @endrouteis
@routeisnot
Checks if the current route name is not equal to the given parameter. You can use a wildcard like blog.post.*
@routeisnot('webshop.checkout') Do something only if this is not the checkout @endrouteisnot
@instanceof
Checks if the first parameter is an instance of the second parameter.
@instanceof($user, 'App\User') User is an instance of App\User @endinstanceof
@typeof
Checks if the parameter is of a certain type.
@typeof($text, 'string') Text is a string @endtypeof
@repeat
Repeat something a specified amount of times.
@repeat(3) Iteration #{{ $iteration }} @endrepeat
@fa, @fas, @far, @fal, @fab, @fad, @mdi, @glyph
Quickly output an icon with Font Awesome, Material Design Icons or Glyphicon.
@fa('address-book', 'optional-extra-class') // for Font Awesome 5 (solid, regular, light, brand, duotone): @fas('address-book', 'optional-extra-class') @far('address-book', 'optional-extra-class') @fal('address-book', 'optional-extra-class') @fab('address-book', 'optional-extra-class') @fad('address-book', 'optional-extra-class') // for Material Design Icons @mdi('account', 'optional-extra-class') // for Glyphicons @glyph('glass', 'optional-extra-class')
@data
Output data-attributes from an array.
@data(['testing' => 123])
@haserror
Quickly output for classical $errors->has('input_name')
to determine if any error messages exist for a given field.
@haserror('input_name') This input has an error @endhaserror
Testing
composer test
Contributing
Contributions are welcome, thanks to y'all :)
About Appstract
Appstract is a small team from The Netherlands. We create (open source) tools for Web Developers and write about related subjects on Medium. You can follow us on Twitter, buy us a beer or support us on Patreon.
License
The MIT License (MIT). Please see License File for more information.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK