我收到了laravel 5的错误消息,我不明白。
Next exception 'ErrorException' with message 'File build/css/all.css not
defined in asset manifest.
我还没有安装任何资产管道或其他东西。刚刚使用elixir将scss文件编译,缩小并版本化为all.css
,并将其包含在主视图中<link rel="stylesheet" href="{{ elixir("css/all.css") }}">
这是什么资产清单&#39;以及如何解决这个错误?`
答案 0 :(得分:28)
问题当然是你想要实现的目标。
如果您只是将all.css
文件放入public/css
目录并且想要显示此文件,则可以使用:
<link rel="stylesheet" href="{{ asset('css/all.css') }}" />
但是,如果您打算修改此文件但又不想遇到缓存问题,则可以将此all.css
文件重新放入public/css
,然后放入gulpfile.js
:
var elixir = require('laravel-elixir');
elixir(function(mix) {
mix.version('public/css/all.css');
});
现在你需要运行:
gulp
在您的终端,现在您可以使用
<link rel="stylesheet" href="{{ elixir('css/all.css') }}" />
就像之前在HTML中所做的那样。
它将使用public/build/
创建rev-manifest.json
文件夹(在您的案例中缺少此文件)。
我建议你观看Managing assets Laracasts episode以便更好地理解它。
答案 1 :(得分:4)
这里的问题相同!!我通过创建css的生产版本来解决它。我将gulefile.js更新为下面的内容,
elixir(function(mix) {
mix.sass('app.scss').version('css/app.css').browserify('app.js');
});
然后运行以下命令,该命令将在 public / build 目录中创建 rev-manifest.json 文件。
gulp --production
祝你好运!!