我想将部分 View 的内容(用 Jade 编写)加载到 Bootstrap 模式对话框中。为此,我使用 AJAX 调用。我可以只返回生成的 HTML 并将其加载到模式中,但是我需要与呈现的 View 一起处理其他数据。 我希望能够返回这样的对象(解析为 JSON):
response = {
some_data: 'blablabla',
some_more_data: [5, 8, 10, 67],
my_html: '<div>HTML rendered from the Jade template</div>'
};
有没有办法做到这一点?现在我可以像这样返回呈现的 HTML:
res.render('employees', {layout: false});
但是我怎样才能将它存储在一个变量中以与更多数据一起返回,而不必进行更多的 AJAX 调用呢?
最佳答案
在 express 中,您可以使用 app.render使用回调来渲染 View 并获取 html:
app.render('employees', {layout: false}, function(err, html){
var response = {
some_data: 'blablabla',
some_more_data: [5, 8, 10, 67],
my_html: html
};
res.send(response);
});
关于ajax - 将 View 渲染到 ExpressJS 中的变量中(用于 AJAX 响应),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18065812/