expressで、railsのcontent_for を実装する
expressのdynamicHelperは、スコープを維持したfunctionオブジェクトを返せるようなので、dynamicHelperを使うとでける。
ここを見たらわかりましたよ
http://stackoverflow.com/questions/3601080/how-do-i-pass-content-from-a-template-to-a-layout-in-express
app.dynamicHelpers({ pageTitle: function() { var _pageTitle = ''; return { get: function() { return _pageTitle; }, set: function(val) { _pageTitle = val; return _pageTitle; } }; } });
layout.jade
title 良いサイト #{pageTitle.get() ? ' - ' + pageTitle.get() : ''}
index.jade
h1= pageTitle.set('ていやー!')
↓
<title>良いサイト - ていやー!</title> <h1>ていやー!</h1>
こんな感じ。