laravel 5 - css文件未在资产清单中定义?

hah*_*ute 17 assets laravel gulp laravel-5 laravel-elixir

我收到了laravel 5的错误消息,我不明白.

Next exception 'ErrorException' with message 'File build/css/all.css not             
defined in asset manifest.
Run Code Online (Sandbox Code Playgroud)

我没有安装任何资产管道或其他东西.只是使用elixir来编译,缩小和版本化scss文件all.css并将其包含在主视图中<link rel="stylesheet" href="{{ elixir("css/all.css") }}">

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

Mar*_*łek 28

问题当然是你想要实现的目标.

如果只是将all.css文件放入public/css目录并且要显示此文件,则可以使用:

<link rel="stylesheet" href="{{ asset('css/all.css') }}" />
Run Code Online (Sandbox Code Playgroud)

但是,如果您计划修改此文件并且不希望出现缓存问题,则可以all.css再次将此文件public/css放入gulpfile.js:

var elixir = require('laravel-elixir');

elixir(function(mix) {
    mix.version('public/css/all.css');
});
Run Code Online (Sandbox Code Playgroud)

现在你需要运行:

gulp
Run Code Online (Sandbox Code Playgroud)

在你的终端,现在你可以使用

<link rel="stylesheet" href="{{ elixir('css/all.css') }}" />
Run Code Online (Sandbox Code Playgroud)

正如您之前在HTML中所做的那样.

它将创建public/build/文件夹rev-manifest.json(在您的情况下缺少此文件).

我建议你观看管理资产Laracasts一集来更好地理解它.