Swig をテンプレート エンジンとして Express 3.0 を使用して NodeJS アプリを開発しています。私が達成したいのは、レンダー引数を次のルートに渡すことです。サイトのすべてのページに特定のサイト コンポーネント (サイドバー、ナビゲーション バー、フッターなど) が存在するため、これが必要です。これらのコンポーネントのそれぞれに、オンとオフを切り替えるウィジェットとリンクがあります。現在、これらのウィジェットを切り替えるために次のことを行っています。
response.render('network.html', {
activeTab: 'network',
username: request.session.username,
bread_current: 'Network',
page_title: 'Your Network',
page_subtitle: 'Mordrum',
widgets: {
navbar: {
chats: {
enabled: true,
color: 'blue',
icon: 'chatbubble'
}, messages: {
enabled: true,
color: 'red',
icon: 'mail'
}, users: {
enabled: true,
color: 'green',
icon: 'person'
}
}
}
})
そこ (widgets オブジェクト内) には多くの引数があり、コード内で (ルートごとに 1 回) 何度も繰り返すことになります。引数を次のルートに渡す方法があるかどうか疑問に思っていました。