tautvydasr / blade-class-names
处理基于条件输出html类的包
1.3.1
2021-02-18 17:29 UTC
Requires
- php: ^7.1.3|^8.0
- illuminate/support: ^5.6 || 6.* || 7.* || 8.*
Requires (Dev)
- phpunit/phpunit: ^7.2|^9.5
README
这是一个简单的包,帮助处理blade模板中的条件html类。
注意: 如果使用Laravel 8或更高版本,请考虑使用原生的@class
指令。
安装
首先在composer中要求此包
composer require tautvydasr/blade-class-names
最后,将服务提供者添加到你的Laravel config/app.php
文件中的providers
数组
'providers' => [ // ... ClassNames\ClassNamesServiceProvider::class, // ... ],
或者在Lumen中使用时,在bootstrap/app.php
中注册服务提供者
... $app->register(\ClassNames\ClassNamesServiceProvider::class); ...
使用
基本来说,该包允许你简化像这样的条件类情况
<a href="#" class="menu-item{{ $loop->first ? ' first-item' : '' }}{{ request()->routeIs('foo') ? ' active' : '' }}"> ... </a>
通过使用blade指令@classNames()
变成这样。
<a href="#" class="@classNames('menu-item', ['first-item' => $loop->first, 'active' => request()->routeIs('foo')])"> ... </a>
对于Lumen用户,可以通过app()
辅助器或外观访问。
<a href="#" class="app('classnames')->render('menu-item', ['first-item' => $loop->first, 'active' => request()->routeIs('foo')])"> ... </a> <a href="#" class="\ClassNames\ClassNamesFacade::render('menu-item', ['first-item' => $loop->first, 'active' => request()->routeIs('foo')])"> ... </a>
使用外观方法时,确保在bootstrap/app.php
文件中取消注释$app->withFacades();
行。
本地设置
复制示例docker compose配置文件(可选)
cp docker-compose.yml.dist docker-compose.yml
运行docker容器(可选)
docker-compose up -d
登录到docker容器,其中CONTAINER_ID
是你的ID(可选)
docker exec -ti CONTAINER_ID /bin/bash
使用composer安装依赖项
composer install
测试
运行phpunit测试
./vendor/bin/phpunit
许可证
该包免费使用,并受MIT许可证的许可。