tecdynamics/assets

Laravel 资源管理

dev-main 2024-06-30 09:28 UTC

This package is auto-updated.

Last update: 2024-09-30 10:04:41 UTC


README

composer require tec/assets

适用于版本 <= 5.4

将以下内容添加到 config/app.php 文件的 providers 部分

// config/app.php
'providers' => [
    ...
    Tec\Assets\Providers\AssetsServiceProvider::class,
];

并添加到 aliases 部分

// config/app.php
'aliases' => [
    ...
    'Assets' => Tec\Assets\Facades\AssetsFacade::class,
];

所有资源将统一在配置文件中管理,因此我们需要发布配置才能使用。

php artisan vendor:publish --provider="Tec\Assets\Providers\AssetsServiceProvider" --tag=config

将其添加到主布局视图中,在 head 标签

{!! \Assets::renderHeader() !!}

并在关闭 body 标签之前

{!! \Assets::renderFooter() !!}

方法

添加脚本

\Assets::addScripts(['key-of-assets-in-config-file']);

示例

\Assets::addScripts(['app', 'bootstrap', 'jquery']);

添加样式

\Assets::addStyles(['key-of-assets-in-config-file']);

示例

\Assets::addStyles(['bootstrap', 'font-awesome']);

移除脚本

\Assets::removeScripts(['key-of-assets-in-config-file']);

示例

\Assets::removeScripts(['bootstrap']);

移除样式

\Assets::removeStyles(['key-of-assets-in-config-file']);

示例

\Assets::removeStyles(['font-awesome']);

其他

  • 为资源设置版本。添加到 .env
ASSETS_VERSION=1.0

然后所有资源都将添加 ?v=1.0

  • 切换到在线模式
ASSETS_OFFLINE=false

然后如果配置文件中定义了 CDN,资源将从 CDN 加载。

  • 禁用版本控制
ASSETS_ENABLE_VERSION=false