创建Laravel 5包时加载资产
问题描述:
创建Laravel 5包时,如何加载CSS/JS文件等资产?我的工作包目前有控制器和视图,但是所有的CSS都放在每个视图的头部,这是不好的。创建Laravel 5包时加载资产
编辑:感谢您的回答,但也许我不太清楚。我的问题是参考Laravel软件包而不是Laravel应用程序。在这种情况下,我使用服务提供商
// Views
$this->loadViewsFrom(__DIR__ . '/Views', 'packagename');
上面一行放置在register()
方法装载视图。
答
按照docs:
的
public
目录包含前端控制器和您的资产(图像,JavaScript,CSS等)。
我通常的结构如下:
/public
/css
/js
index.php
然后,轻松地在你的刀模板,你可以添加这些资产,如:
<link rel="stylesheet" href="css/main.css">
最近我发现,在某些情况下,这将导致404错误。为了确保您始终获得资源,您可以使用:
<link rel="stylesheet" href="{{ asset('css/main.css') }}" >
关于此问题的文档可以找到here,关于此问题,您可以参考this previously answered question。
您如何发布视图?用css/js做同样的事情,将它们发布到“public /”文件夹(最好是'public/vendor/packagename/assets/js /') – samlev