laravel elixir - объединение скриптов несколько раз

Я хочу объединить все свои скрипты в один мини-файл javascript, но у меня возникают проблемы с их объединением.

mix.browserify([
  // ViewModels
  'viewmodels.js'
], 'resources/assets/compiled/js/viewmodels.js')

mix.coffee([
  // WebSocket Client
  'client.coffee'
], 'resources/assets/compiled/js/').scripts([
  // Vendor
  'vendor/jquery.js',
  'vendor/bootstrap.js',
  'vendor/vue.js',
  'vendor/sisyphus.js',
  'vendor/leaflet.js',
  'vendor/moment.min.js'
], 'resources/assets/compiled/js/vendor.js').scripts([
  // Site & Helpers
  'libs/laravel.js',
  'libs/helpers.js'
], 'resources/assets/compiled/js/site.js').scripts([
  // Combine Scripts
  'resources/assets/compiled/js/vendor.js',
  'resources/assets/compiled/js/client.js',
  'resources/assets/compiled/js/site.js',
  'resources/assets/compiled/js/viewmodels.js'
], 'public/js/all.js', './')

Файлы создаются в resources/assets/compiled/js, поэтому у меня есть:

  • клиент.js
  • сайт.js
  • вендор.js
  • viewmodels.js

Последней запущенной задачей является задача scripts, объединяющая четыре файла. В журнале эликсира указано (я упростил вывод):

  • Просмотр (ViewModels)
  • CoffeeScript скомпилирован
  • Объединение поставщиков
  • Слияние сайта и помощников
  • Объединение сценариев объединения

... и это сообщения об ошибках, которые я получаю:

File not found: ./resources/assets/compiled/js/vendor.js
File not found: ./resources/assets/compiled/js/site.js

Я сделал то же самое с sass и styles, и это сработало отлично.

mix.sass([
  // Vendor
  'resources/assets/sass/fontawesome/font-awesome.scss',
  // Site
  'resources/assets/sass/site/site.scss'
], 'resources/assets/compiled/css/').styles([
  // Vendor
  'resources/assets/css/bootstrap.min.css',
  'resources/assets/css/hover-min.css',
  'resources/assets/css/leaflet.css',
  'resources/assets/compiled/css/font-awesome.css',
  // Site
  'resources/assets/compiled/css/site.css'
], 'public/css/all.css', './').version(
  'public/css/all.css'
)

person Johannes    schedule 22.07.2015    source источник


Ответы (1)


Почему бы вам не объединить сценарии все сразу, а сделать это 3 раза?

Попробуйте так

mix.coffee([
  // WebSocket Client
  'client.coffee'
], 'resources/assets/compiled/js/')
  .scripts([
    // Vendor
    'resources/assets/js/vendor/jquery.js',
    'resources/assets/js/vendor/bootstrap.js',
    'resources/assets/js/vendor/vue.js',
    'resources/assets/js/vendor/sisyphus.js',
    'resources/assets/js/vendor/leaflet.js',
    'resources/assets/js/vendor/moment.min.js',
    // Site & Helpers
    'resources/assets/js/libs/laravel.js',
    'resources/assets/js/libs/helpers.js',
    'resources/assets/compiled/js/client.js',
    'resources/assets/compiled/js/viewmodels.js'
  ], 'public/js/all.js', './');
person Li Jia Li    schedule 22.07.2015