2015-02-05 63 views
16

我收到一條錯誤消息,laravel 5,我不明白。laravel 5 - css文件沒有在資產清單中定義?

Next exception 'ErrorException' with message 'File build/css/all.css not    
defined in asset manifest. 

我還沒有安裝任何資產管道什麼的。只是用靈藥來編譯,運行如下和版本的SCSS文件到all.css,其中包括它與<link rel="stylesheet" href="{{ elixir("css/all.css") }}">

主視圖這是什麼「資產清單」,以及如何解決這個問題?`

回答

27

的問題是當然你想達到什麼目的。

如果你簡單的放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以更好地理解它。

2

同樣的問題在這裏!我通過創建生產版本的css來解決它。我更新gulefile.js爲波紋管,

elixir(function(mix) { 
    mix.sass('app.scss').version('css/app.css').browserify('app.js'); 
}); 

然後運行以下命令將在公衆創造REV-的manifest.json文件/建造目錄。

gulp --production 

祝你好運!