2015-10-23 4 views
2

При настройке часов на сетевом диске я не могу использовать ** для поиска всех подкаталогов. Сообщается об ошибке, о которой я сообщаю, и насколько я могу судить, это известная проблема с Gulp, которая еще не исправлена. Код, я использую очень простой и просто предназначен для проверки того, что часы работает:Gulp: смотреть все подкаталоги с помощью **

gulp.task('watch', function(){ 
    var watcher = gulp.watch('**/*.js'); 
    watcher.on('change', function(event){ 
     console.log('File: ' + event.path + ' changed'); 
    }); 
}); 

Мой вопрос, как я не могу получить ** работает на сетевом диске, есть альтернатива что позволило бы мне проверить Gulp на все подкаталоги на часах? Буду признателен за любую оказанную помощь.

+1

Вы проверили, не смог ли какой-либо из плагинов, которые поставляют подобную функциональность, избежать проблемы? Например, это: https://www.npmjs.com/package/gulp-watch –

+0

Я действительно давал gulp-watch попробовать, но я должен признать, что я был не очень стойким. Я попробую немного усерднее с gulp-watch и посмотрю, смогу ли я заставить его работать. Моя основная проблема заключалась в том, что примеры, которые они перечисляют, все еще используют **, что вызывает ошибку – OliverRadini

+0

Для справки, я получаю ошибку: ENOTSUP: операция не поддерживается в сокете, scandir – OliverRadini

ответ

1

Вот кумуляция моих комментариев в качестве ответа: P

Проверили вас, если посмотреть любого из глотка плагин, которые поставляют аналогичные функциональные возможности могли бы избежать проблем? Например, этот: http://npmjs.com/package/gulp-watch

Если вы посмотрите в package.json gulp-watch, вы заметите, что у них есть dev devency на пакете с именем glob, где сам по себе глоток. Это заставляет меня поверить, что глоток может иметь собственную реализацию «глотания», тогда как gulp-watch использует другой пакет. Именно там я надеюсь (для вас: D), что вы можете получить лучший результат.

Другое дело, попытались ли вы сопоставить местоположение своей сети с локальным диском, а затем запустить свою задачу с помощью этого cwd? Сначала я попытаюсь сопоставить диск. У этого есть хорошие шансы работать на гораздо меньшие усилия;)

+1

После того, как вы попробовали это, это было правильное решение проблемы. Спасибо еще раз за помощь! – OliverRadini

+0

Рад слышать, что вы нашли решение. Рад помочь. Также спасибо за то, что нашли время, чтобы вернуться и узнать мой ответ;) –

0

Вы можете сделать это, заменив '**/*.js' на **/**/*.js. Это найдет любые файлы javascript, которые у вас есть.

+0

Извините, возможно, я неправильно поставил вопрос. ** не работает вообще для меня, возможно потому, что я пытаюсь использовать его на сетевом диске. Я попробовал ваше предложение, но он дал ту же ошибку. – OliverRadini

Смежные вопросы