asset()或URL::asset()默认指向http://my-url/public/。有没有办法将asset()的url更改为http://my-url/public/assets/?我有许多资产文件,我应该在我的刀片模板中使用,我不想写assets任何时候。我的意思是在我的刀片模板中使用asset('js/script.js')而不是asset('assets/js/scripts.js')。
asset()
URL::asset()
http://my-url/public/
http://my-url/public/assets/
assets
asset('js/script.js')
asset('assets/js/scripts.js')
ix0qys7i1#
我也在使用S3作为文件提供者的情况下。在搜索Laravel文档后,我发现了以下解决方案。您可以通过在.env文件中设置ASSET_URL变量来配置资产URL主机。https://laravel.com/docs/7.x/helpers#method-asset
u3r8eeie2#
默认情况下,没有任何配置。您可以创建自定义函数,如下所示:
function my_asset($path, $secure = null){ return asset('/assets/' . trim($path, '/'), $secure); }
mspsb9vt3#
根据laravel8.x文档,您可以通过在.env文件中设置ASSET_URL变量来配置资产URL主机。在您情况下,在.env文件中:资产URL=/公共/资产如果没有发生更改,请记住运行php artisan config:clear
nkkqxpd94#
覆盖默认的asset()不是一个好主意,但是可以通过定义自己的帮助器实现来实现:
function asset($path, $secure = null) { return app('url')->asset($path.'/asset', $secure); }
但是,这是定义您自己的辅助对象(如customAsset())的更好方法。
customAsset()
4条答案
按热度按时间ix0qys7i1#
我也在使用S3作为文件提供者的情况下。在搜索Laravel文档后,我发现了以下解决方案。您可以通过在.env文件中设置ASSET_URL变量来配置资产URL主机。
https://laravel.com/docs/7.x/helpers#method-asset
u3r8eeie2#
默认情况下,没有任何配置。您可以创建自定义函数,如下所示:
mspsb9vt3#
根据laravel8.x文档,您可以通过在.env文件中设置ASSET_URL变量来配置资产URL主机。
在您情况下,在.env文件中:
资产URL=/公共/资产
如果没有发生更改,请记住运行php artisan config:clear
nkkqxpd94#
覆盖默认的
asset()
不是一个好主意,但是可以通过定义自己的帮助器实现来实现:但是,这是定义您自己的辅助对象(如
customAsset()
)的更好方法。