17

我收到 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") }}">

这个“资产清单”是什么以及如何解决这个错误?

4

2 回答 2

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(在您的情况下此文件丢失)。

我建议您观看“管理资产 Laracasts”一集以更好地理解它。

于 2015-02-05T21:05:30.860 回答
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 

祝你好运!!

于 2016-05-11T19:44:40.753 回答