interitty / assets-manager
带有Latte宏的资产管理器,帮助正确加载CSS/JS资源。
v1.0.4
2024-09-01 12:10 UTC
Requires
- php: ~8.3
- dg/composer-cleaner: ~2.2
- interitty/di: ~1.0
- interitty/utils: ~1.0
- nette/caching: ~3.3
Requires (Dev)
- interitty/code-checker: ~1.0
- interitty/phpunit: ~1.0
- latte/latte: ~3.0
- nette/application: ~3.2
- nette/bootstrap: ~3.2
README
带有Latte宏的资产管理器,帮助正确加载CSS/JS资源。
在生产环境中,用于资源的缓存破坏很有用。在开发环境中,使用Browsersync时,资源将渲染其原始路径。
要求
安装
安装interitty/assets-manager的最佳方式是使用Composer
composer require interitty/assets-manager
然后在Nette配置文件中注册扩展
# app/config/config.neon
extensions:
assetsManager: Interitty\AssetsManager\Nette\DI\AssetsManagerExtension
使用方法
宏可以在任何Latte模板中使用
{* app/presenters/templates/@layout.latte *}
<link rel="stylesheet" href="{asset css/asset.css}">
<script src="{asset js/asset.js}"></script>
它将路径添加到`$assetBasePath`
前,并从修订版本清单中加载修订版本
<link rel="stylesheet" href="/assets/css/asset.aHR0cHM6Ly9nb28uZ2wvS1ZRNHpT.css}">
<script src="/assets/js/asset.aHR0cHM6Ly9nb28uZ2wveFZqZHM0.js"></script>
修订版本清单
修订版本清单是一个包含资源修订路径的JSON文件。
它可以通过gulp或其他类似工具的各种资源处理器生成。
修订版本清单在`$manifestPath`
中搜索。
可以直接设置修订版本清单的路径
# app/config/config.neon
assetsManager:
assetBasePath: /assets/
manifestPath: %wwwDir%/assets/manifest.json
修订版本清单可能包含资产路径。
文件名中的资产版本
使用这种方法,每次更改文件都有不同的名称。
示例修订版本清单
{
"css/asset.css": "css/asset.aHR0cHM6Ly9nb28uZ2wvS1ZRNHpT.css",
"js/asset.js": "js/asset.aHR0cHM6Ly9nb28uZ2wveFZqZHM0.js"
}
使用示例清单,代码{asset "js/asset.js"}
生成:/assets/js/asset.aHR0cHM6Ly9nb28uZ2wveFZqZHM0.js
路径。
配置
默认配置,可根据需要更改
# app/config/config.neon
assetsManager:
assetBasePath: ''
manifestPath: ''
productionMode: %productionMode%
wwwDir: %wwwDir%