2016-02-22 3 views
2

Я использую Laravel Elix и Gulp (в Windows 8) для объединения и компиляции файлов Angular.js и SCSS. Se код ниже:Laravel Elixir - Часы Gulp не заканчиваются до тех пор, пока терминал не получит фокус

var elixir = require('laravel-elixir'); 
require('./tasks/angular.task.js'); 
require('./tasks/bower.task.js'); 
require('laravel-elixir-livereload'); 

elixir.config.js.outputFolder = 'public/js/'; 

elixir(function(mix){ 
    mix 
     .sass('app.scss') 
     .bower() 
     .angular('resources/assets/angular/'); 
}); 

Проблема заключается в том, что, когда я бегу gulp watch комбинированный all.js файл не будет обновляться, пока я не щелкните окно терминала (дать ему фокус). Это показывает, что Глоток закончил задачу:

[13:26:45] Finished 'angular in resources/assets/angular/' after 26 ms 
+0

Вы уверены, что, когда он заканчивается, или просто, когда терминал окно обновляется? Потому что время, затраченное на его обработку (26 мс), выглядит неплохо. Используете ли вы по умолчанию 'cmd' или какую-то другую альтернативу, такую ​​как cmder, Console2 и т. Д.? – Bogdan

+0

Я тоже пытался подождать 30-40 секунд, но обновления 'all.js' обновляются сразу после нажатия окна терминала. Я использую стандартные окна 'cmd'. – atlazor

+1

Под «обновлением» вы хотите записать файл на диск или обновить файл в своем браузере? (как я вижу, вы используете LiveReload). – Bogdan

ответ

0

После прочтения предыдущих комментариев, я думаю, что есть еще решение, которое доступно для использования, если готовы:

в разделе Настройки системы в разделе Синхронизация вы можете задайте сохранение файла по таймеру, когда приложение не работает.

Таким образом, у вас будет наблюдатель, как ожидается, когда вы печатаете.

System Settings