如何解决如何重命名 yii\web\YiiAsset 文件名
我使用的是 Yii2 框架,我不知道如何从 yii\web\YiiAsset
重命名文件名。
yii 自动在 web/assets
文件夹中生成此文件。有可能吗?
解决方法
您可以覆盖 yii\web\AssetManager::hash($path)
class MyAssetManager extends yii\web\AssetManager{
protected function ($path) {
return hash('md4',$path);
}
}
此外,您还可以设置 $hashCallback
、read this
您可以在 aftercopy 上重命名资产文件:
'assetManager' => [
'forceCopy' => true,'afterCopy' => function ($from,$to) {
if (basename($from) == 'site.css') {
rename($to,dirname($to) . DIRECTORY_SEPARATOR . 'newname.css');
}
},],
或使用“mysite.css”代替“site.css”使用assetMap:
'assetManager' => [
'assetMap' => [
'site.css' => 'mysite.css',
如果以上都不能解决您的问题,您将不得不覆盖 AssetManager->publishDirectory($src,$options)
,它最终会默认调用 FileHelper::copyDirectory
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。