Comments (8)
@mrmlnc, залил демонстрационный проект.
Попробуй поменять значение переменной в configuration.pug
и проверь ./build/pages/contacts.html
.
from emitty.
@radiocity, OS? Напиши полный сценарий. У меня на macOS работает нормально. Попробуй npm i -D emitty@next
– опубликую завтра. И давай всё таки создадим отдельное ишью.
from emitty.
Привет,
Во-первых, в документации и статьях сказано, что в качестве директории нужно указывать корневую директорию файлов шаблонов, стилей или чего-то там, что нужно компилировать инкрементально.
Во-вторых, возможно, я не ясно выразился как работает Emitty, поэтому повторюсь:
- Указывается корневая директория файлов и путь изменившегося файла (можно не указывать, но это ударит по производительности - см. статью).
- Вызывается Emitty.
- Emitty сканирует вложенные директории и определяет зависимости каждого файла (поэтому зависимости не вложенные), а также время последнего изменения файла.
- Затем Emitty смотрит на путь изменившегося файла и ищет для него зависимости в хранилище.
4.1. Если зависимости найдены и файл не обновился, то в следующий шаг передаются зависимости из хранилища.
4.2. Если зависимости не найдены или файл обновился, то для этого файла определяются зависимости и только потом они передаются в следующий шаг. - Emitty автоматически строит вложенное дерево для переданного пути, если вызвать
getDependencies
илиcheckDependencies
. То есть берет путь изменившегося файла, находит его зависимости, проходится по ним и для каждой зависимости ищет её зависимости и так далее. - Emitty говорит, нужно ли компилировать файл.
Для Gulp всё намного проще - есть рабочие примеры. Смотреть их нужно здесь: https://github.com/mrmlnc/emitty#how-to-use-with-gulp
Минимально рабочий пример для нативного использования можно получить из части, описывающей resolver - https://github.com/mrmlnc/emitty#resolver.
from emitty.
Здравствуйте, сегодня днем я понял, что должен был передавать корневую папку, но пока вы не написали, у меня и примеры из вашей документации не работали. Я думаю, что проблема во мне была, и у меня как у новичка все через танцы с бубном. Спасибо за ответ.
from emitty.
И всё же с многоуровневым include не работает так, как хотелось бы.
Структура:
layouts
common.pug
clean.pug
page.pug
pages
contacts.pug
configuration.pug
Цепочка зависимостей:
configuration -> common -> clean -> page -> contacts
Испольую код из performance примера, указывая пути к руту.
Изменяю значение переменной в configuration.pug. Emitty посылает запрос на обновление одного лишь configuration.html, но не дальше.
Правда, возможна проблема в организации проекта или особенностях работы gulp-pug.
from emitty.
Привет, @radiocity,
Ты не мог бы поделиться репозиторием или архивом с твоим случаем? – я смогу посмотреть его вечером или завтра днём. Кажется, что проблема не в Emitty, хотя я этого и не исключаю.
А ещё было бы круто, если ты создал новый ишью :)
from emitty.
У тебя неправильно указаны пути:
-let src = './../source/pug',
+let src = '../source/pug',
- dist = './../build',
+ dist = './../build',
from emitty.
@mrmlnc, да, после запуска проект собирается нормально, но по-прежнему при изменениях не обновляет html файлы.
from emitty.
Related Issues (20)
- Unable to detect @import filename of underscore prefix on Sass/Scss HOT 2
- Pug не компилируется HOT 19
- Не работает с абсолютными путями HOT 2
- Проблема при удалении pug файла при сборке HOT 13
- pug dependencies fail when line contains trailing spaces
- Поправить документацию. HOT 2
- Зависает задача. HOT 4
- Совместимость с Node v.8.9.0? HOT 3
- Cannot read property 'path' of undefind HOT 3
- Не работает с Pug 4 HOT 1
- Помогите разобраться HOT 2
- Как заставить emitty компилировать все шаблоны HOT 1
- Release v2.0.0 [12.11.2019]
- Add .npmrc and .npmignore symbolic link
- Проблема при сборке файлов .styl HOT 2
- Support stylus lang
- language-scss does not work with @use
- Подключить emitty в webpack для pug
- dont work with pug basedir option HOT 2
- Не компилирует файл HOT 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from emitty.