Come posso rendere più file .ejs
in forma annidata?Come eseguire il rendering di più file .js in formato nidificato in Node.js ed Express?
Così ho un file seguente:
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})
});
});
}
});
Dove index.ejs
compone di tag molto semplice html (dicono html, la testa, il corpo, e uno p
tag) e hanno <%- content %>
in essa, in cui i contenuti si presume che essere reso da un altro file .js, che non include il tag html, head o body e si presume che sia reso solo un contenuto e un titolo. Tuttavia, quando ho avuto accesso a questo file tramite la richiesta POST e ho provato a eseguire il rendering dei file e ho estratto il file HTML emesso dal mio browser, il contenuto era costituito solo dal file index2.ejs
, che significa che non ha tag HTML, corpo, testa.
Quindi cosa mi manca? E se voglio includere una libreria javascript per <script src='some_file.js'></script>
, dovrei aggiungere un'altra proprietà di rendering quando provo a eseguire il rendering nel file index2.ejs
... giusto?
Grazie.
Questo è quello che cercavo !! :) – dwoodwardgb