Какие файлы Laravel Elixir нужны на производственном сервере?

Вступление:
Gulp просматривает мои файлы css / js до режима разработки на моей локальной машине.

Затем на этапе производства я загружаю весь проект laravel на рабочий (живой) сервер.

Проблема:
Со всем этим материалом для глотка и эликсира проект laravel становится очень тяжелым.

Вопрос:
Какие файлы node_modules каталог, который мне нужен для загрузки проекта на рабочий сервер, чтобы Elixir работал нормально?

Я имею в виду в том числе all.css а также all.js файлы по

<link rel="stylesheet" href="{{ elixir('css/all.css') }}">

Может быть, нет необходимости загружать их все?

10

Решение

Вам не нужно беспокоиться о включении каких-либо файлов из node_modules каталог; вы можете думать о них как о зависимостях, похожих на vendor каталог для вашего проекта php.

Вам просто нужно включить файлы в public/* каталог, чтобы иметь рабочие представления, если вы используете стандартные пути и конфигурацию для компиляции ресурсов. Вы можете увидеть хороший пример этого в Сценарии раздел документации по эликсиру.

Метод scripts предполагает, что все пути относятся к каталогу resources / assets / js, и по умолчанию помещает полученный JavaScript-код в public / js / all.js:


elixir(function(mix) {
mix.scripts([
'jquery.js',
'app.js'
]);
});

Как примечание, я лично не рекомендовал бы создавать такое разделение, потому что проект кажется тяжелый. Если у вас очень большой размер проекта, скорее всего, это не должно быть связано с css и js. Вы также можете рассмотреть возможность использования CDN для облегчения производственного пространства, если это необходимо.

1

Другие решения

Я столкнулся с той же проблемой.
Мой gulpfile.js имеет

mix.sass('app.scss');
mix.browserify('app.js');
mix.version(['css/app.css', 'js/app.js']);

Это мои решения:

  • Вариант 1: если у вас есть npm и gulp на сервере. На локальной машине делай
    npm shrinkwrapзатем нажмите на package.json, gulpfile.js, npm-shrinkwrap.json,
    ресурсы / активы / (JS | дерзость). В корне сайта сервера сделайте npm install а также gulp --production
  • Вариант 2: Нет необходимости в npm или глотке на сервере. Просто делать gulp --production на локальном и нажмите общедоступный / build / * на сервер. Если версия Elixir не используется, вместо нее нажмите public / (js | css). ресурсы / активы (js | css) и все, что нужно для npm gulp, могут храниться на сервере.

node_modules не нужен ни в одном случае.
Я использовал вариант 2, гораздо проще и отлично работал для меня.

1

По вопросам рекламы [email protected]