Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 27.09.2014, 17:03
Профессор
Отправить личное сообщение для l-liava-l Посмотреть профиль Найти все сообщения от l-liava-l
 
Регистрация: 14.03.2012
Сообщений: 1,808

Просто вотчер
Доброго времени суток!

Появилась необходимость написать небольшой вотчер, решил юзать ноду.

(function() {
    var fs = require('fs');
    var ncp = require('ncp').ncp;

    var inputUrl = './gui/static/css/styles.less';
    var outputUrl = './static/css/styles.less';

    (function onChange() {
        ncp(inputUrl, outputUrl)

        fs.watch(inputUrl, onChange);
    })()
})()


Все работает. Но меня смущает рекурсия.

Разве fs.watch не должен следить за каждым изменением сам без перезапуска?
__________________
Научу себя плохому

Последний раз редактировалось l-liava-l, 27.09.2014 в 18:12.
Ответить с цитированием
  #2 (permalink)  
Старый 27.09.2014, 17:43
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Ну он и следит, это же событие. Зачем тут вообще рекурсия нужна?
__________________
kobezzza
code monkey
Ответить с цитированием
  #3 (permalink)  
Старый 27.09.2014, 18:07
Профессор
Отправить личное сообщение для l-liava-l Посмотреть профиль Найти все сообщения от l-liava-l
 
Регистрация: 14.03.2012
Сообщений: 1,808

Цитата:
Ну он и следит, это же событие. Зачем тут вообще рекурсия нужна?
Я сюда с аналогичным вопросом и пришел)
После первого изменения onChange вызвывается а потом тупо перестает. И приходится поднимать еще раз.

Мб как то связано с вебштормом, в котором редактируется файл
__________________
Научу себя плохому

Последний раз редактировалось l-liava-l, 27.09.2014 в 18:11.
Ответить с цитированием
  #4 (permalink)  
Старый 28.09.2014, 10:58
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Цитата:
Мб как то связано с вебштормом, в котором редактируется файл
Да, тоже сегодня столкнулся, WS может колдовать с файлом и из-за этого могут быть проблемы. Решил так: повесил вотчер на папку с файлом и делегировал событие.
__________________
kobezzza
code monkey
Ответить с цитированием
  #5 (permalink)  
Старый 28.09.2014, 12:37
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

В процессе работы выяснилось, что вотчеры в ноде сделаны довольно убого, с точки зрения кроссплатформенности, например, в Win бажит на вложенных папках.

Заюзал модуль https://www.npmjs.org/package/monocle, который вроде как фикит эти косяки.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 28.09.2014 в 12:40.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
.snapshotLength и просто .length в чём разница BIOHAZARD Events/DOM/Window 2 30.11.2008 18:20
Просто бага! Помогите! Орёт на скобки! Sc@M Общие вопросы Javascript 3 07.10.2008 20:12
Наверно очень просто BEER_HUNTER Общие вопросы Javascript 4 01.09.2008 15:19
На входе HTML получить на выходе просто текст, как? Dmitry Общие вопросы Javascript 2 25.08.2008 10:42
Не просто определение типа браузера... Driver86 Общие вопросы Javascript 6 08.04.2008 21:35