gawdl3y / asset-prefixer
Laravel的自动资源路径前缀
Requires
- php: >=5.3.0
- illuminate/support: 4.*
- illuminate/validation: 4.*
This package is not auto-updated.
Last update: 2024-09-28 14:17:31 UTC
README
这是一个简单的包,允许您为资源路径提供前缀,例如在生产中使用AWS S3作为资源,但在开发中使用本地副本。
安装
在您的composer.json中要求此包,并运行composer update(或运行composer require gawdl3y/asset-prefixer:~1.0)
"gawdl3y/asset-prefixer": "~1.0"
安装包后,将ServiceProvider添加到app/config/app.php中的providers数组中
'Gawdl3y\AssetPrefixer\AssetPrefixerServiceProvider',
此外,还将外观添加到aliases数组中
'Asset' => 'Gawdl3y\AssetPrefixer\Asset',
可选地,您也可以用它替换HTML别名,因为AssetBuilder扩展了HtmlBuilder
'HTML' => 'Gawdl3y\AssetPrefixer\Asset',
最后,运行composer config:publish gawdl3y/asset-prefixer
用法
AssetBuilder可以作为HtmlBuilder的替换使用,通过替换HTML外观别名。方法与HtmlBuilder类提供的默认方法相同。AssetBuilder修改的方法以添加前缀为script()、style()、image()、linkAsset()和linkSecureAsset()。注意,当使用前缀时,如果已经提供了协议,则linkSecureAsset()不会修改协议。我建议使用协议无关的前缀,如//somecdn.net/。这将使用HTTP在查看HTTP页面时,在查看HTTPS页面时使用HTTPS。
前缀在包的配置文件中指定。以下是一个使用示例和输出结果
前缀://somecoolcdn.com/
查看代码
{{ Asset::style('css/42.css') }}
输出
<link media="all" type="text/css" rel="stylesheet" href="//somecoolcdn.com/css/42.css">
当作为插入式替换使用(您替换了HTML外观别名)时,您可以使用HTML::style('css/42.css')得到相同的结果。
如果您需要引用具有完整URL的资源,则需要将脚本/样式/图像调用的最后一个参数指定为false。示例
{{ Asset::script('//ajax.googleapis.ac.cn/ajax/libs/jquery/1.11.0/jquery.min.js', array(), null, false) }}