0

Node.js を使用するサイトのホームページで、レイアウトとホームページのそれぞれのビューをレンダリングするにはどうすればよいですか?

これにはヘッダーとフッターが含まれているため、サイトのすべてのページで layout.ejs を使用する必要があります。ページのそれぞれのビューの本文コンテンツは、この yield セクションの layout.ejs 内に挿入されます。 <%- body %>

これまでのところ、このコードを使用すると、ホームページは layout.ejs をレンダリングしますが、ビュー パーシャルの index.ejs はレンダリングしません。index.ejs を渡すにはどうすればよいですか?

app.get('/', function(request, response) {
    response.render('layout.ejs');
});
4

2 に答える 2

0

私の知る限り、これは EJS が実際にできることではありません。body テンプレートを個別にレンダリングして、body 変数として渡すことができます。

// something we prepared earlier
var body = ejs.compile(fs.readFileSync("body.ejs"));

app.get('/', function(request, response) {
  response.render('layout.ejs', {
    body: body(someObject)
  });
});
于 2013-07-18T23:18:10.083 に答える