Стилус node.js импортирует автоматическую перестройку, истекает срок действия?

Как заставить стилус автоматически перестраивать css (включая импорт) при перезапуске узла и добавлять временную метку?

Проблема, как говорит Схарму:

Мои таблицы стилей стилуса всегда перекомпилировались, за одним исключением: при использовании директивы @import импортированная таблица стилей НЕ перекомпилировалась, когда было замечено изменение. В этом случае мне всегда приходилось вручную удалять таблицу стилей для полной перекомпиляции.

редактировать: есть проблема: https://github.com/LearnBoost/stylus/issues#issue /168


person Mark    schedule 18.03.2011    source источник


Ответы (2)


Когда я создавал свои собственные приложения на основе jade/stylus, я использовал для разработки nodemon. Он автоматически перезапускается при любых изменениях файла (после рассмотрения списка игнорирования см. документы).

Мои таблицы стилей стилуса всегда перекомпилировались, за одним исключением: при использовании директивы @import импортированная таблица стилей НЕ перекомпилировалась, когда было замечено изменение. В этом случае мне всегда приходилось вручную удалять таблицу стилей для полной перекомпиляции.

Но во всех остальных случаях перестроение таблиц стилей работало как по маслу.

P.S. Я предполагаю, что вы используете экспресс в качестве предпочтительной структуры, мой опыт основан на этом.

person schaermu    schedule 18.03.2011
comment
Ааа, спасибо за разъяснение, большая часть моей работы в настоящее время находится в импортированных файлах, так что мне нужно изменить это - person Mark; 19.03.2011
comment
Исправил TJ Holowaychuk после небольшого нытья :) - person Mark; 19.03.2011
comment
аааааааа...не заметила :) - person schaermu; 19.03.2011

Если вы используете экспресс или любую веб-инфраструктуру, основанную на подключении, вы можете использовать промежуточное ПО моего разветвленного компилятора (TJ закрыл мой запрос на извлечение, поэтому я думаю, что это никогда не попадет в мастер).

https://github.com/masylum/connect/commit/6ab47b191a1ede91eae90b1608a61f0a7397b082

Это добавляет возможность принудительной автокомпиляции файлов CSS.

person masylum    schedule 18.03.2011
comment
Спасибо за это, мне на самом деле не нужно перекомпилировать каждый запрос, который я использую run.js, который проверяет изменения. Проблема в том, как говорит schaermu, мне просто нужно, чтобы он также проверял импорт. Возможно, я делаю что-то не так, но я не верю, что ваше изменение решит проблему с импортом. Я думаю импорт как-то по другому работает... - person Mark; 19.03.2011
comment
промежуточное ПО компилятора ищет mtimes. Если у вас есть файл A.less, который выполняет import файла B.less, при изменении второго файла mtime A.less останется прежним, поэтому он не будет перекомпилирован. ИМО, при разработке вы не заботитесь о перекомпиляции каждый раз. В продакшне вы никогда не будете компилировать файл меньшего размера и вместо этого будете использовать сгенерированный CSS. - person masylum; 19.03.2011