2014-10-20 3 views
2

Я не знаю, как работает Jade внутри, но я предполагаю, что он компилирует каждый файл шаблона один раз, а затем использует скомпилированную и кэшированную версию для каждого HTTP-запроса.Имеет ли Jade часы * .jade файлы?

Когда у меня работает приложение «Экспресс», и я вношу изменения в свои файлы * .jade, изменения сразу видны в браузере без перезапуска приложения.

Как это работает?

  • Джейд наблюдая * .jade файлы в папке /views?
  • Является ли Джейд проверкой измененной даты на каждом HTTP-запросе и соответствующим образом перекомпилирует шаблон?
  • Является ли Джейд собственно компиляцией HTML на КАЖДОМ HTTP-запросе?

ответ

1

Из документации Экспресс в http://expressjs.com/api.html (в разделе 'настройки')

view cache Включает кэширование компиляции шаблона, вид включен в производстве по умолчанию.

Так

app.set('view cache', true); 

... вынудит cahcing. Но, как четко указано в документах, кэширование значений по умолчанию происходит при запуске приложения с NODE_ENV=production, как и следовало ожидать. Если среда не указана, Node по умолчанию имеет значение «development», и в этом случае кэширование шаблонов отключается.

+0

Означает ли это, что каждый шаблон фактически скомпилирован в КАЖДОМ HTTP-запросе до тех пор, пока я нахожусь в режиме разработки? – Amberlamps

+0

Mmh, мои изменения в * .jade-файлах также видны сразу же без перезапуска приложения, даже когда я нахожусь в рабочем режиме. – Amberlamps