Laravel 5 - файл css не определен в манифесте актива?

Я получаю сообщение об ошибке с laravel 5, которое я не понимаю.

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") }}">

Что это за "манифест актива" и как исправить эту ошибку?

Ответы

Ответ 1

Вопрос, конечно, в том, чего вы хотите достичь.

Если вы просто поместите файл 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, чтобы понять это немного лучше.

Ответ 2

Тот же вопрос здесь!! Я решаю его, создавая производственную версию css. Я обновляю gulefile.js, как показано ниже,

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

Затем запустите следующую команду, которая создаст файл rev-manifest.json в каталоге public/build.

 gulp --production 

Удачи!