如何以嵌套形式渲染多个 .ejs
文件?
我有以下文件:
var mysql = require('mysql');
var ejs = require('ejs');
exports.index = function(req, res){
if (req.method=='POST'){
var connection = mysql.createConnection({user:'root', password:'root', database:'testdb'});
var name = req.param('name');
connection.query('select * from table_name where name = ?', name, function(err, rows, fields){
if(err) throw err;
res.render('index', {
title: 'title', content: res.render('index2', {data:rows})
});
});
}
});
在 index.ejs
中,包含非常基本的html标签(例如html、head、body和一个p
标签),并且其中有 <%- content %>
,这里的content被认为是由另一个 .ejs 文件呈现,该文件不包括html、head或body标签,并且仅被认为是渲染内容和标题。然而,当我通过POST请求访问此文件并尝试呈现文件,然后从浏览器中查看输出的HTML文件时,内容仅包含index2.ejs
文件,这意味着它没有html、body、head标签。
那么我错过了什么?如果我想通过 <script src='some_file.js'></script>
来包含Javascript库,那么在尝试在 index2.ejs
文件中呈现时,我应该添加另一个渲染属性...对吗?