gpt4 book ai didi

javascript - NodeJs - 如何在呈现的 EJS 中呈现 EJS?

转载 作者:行者123 更新时间:2023-11-30 15:16:33 25 4
gpt4 key购买 nike

这是我的想法:我想加载一个呈现的 ejs 文件作为我的主模板 ejs 文件的主体。可能吗?

我的 app.js:

router.get('/', function(req, res) {
res.render('layout', {title: "Example title", body: _____________});
});

我尝试了以下方法,但没有用:

body: res.render('page1_body_content')

那将是我的主模板文件 (layout.ejs)

<!doctype html>
<html>
<head>
<title>
<% (title) ? title : '' %>
</title>
<link rel="stylesheet" href="https://v4-alpha.getbootstrap.com/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="css/font-awesome-4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="css/style.css" />
</head>
<body>
<%= body %>
</body>
</html>

我的第二个文件 (page1_body_content.ejs) 如下所示:

<b>hallo</b>

结果应该是这样的:

<!doctype html>
<html>
<head>
<title>
Expample title
</title>
<link rel="stylesheet" href="https://v4-alpha.getbootstrap.com/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="css/font-awesome-4.7.0/css/font-awesome.min.css">
<link rel="stylesheet" href="css/style.css" />
</head>
<body>
<b>Hallo</b>
</body>
</html>

最佳答案

试试这段代码:-

var ejs = require('ejs');
var compiled = ejs.compile(fs.readFileSync(__dirname + '/page1_body_content.ejs', 'utf8'));
var html = compiled();

res.render('layout', {title: "Example title", body: html });

将正文标签代码更新为:-

<body>
<%- body %>
</body>

关于javascript - NodeJs - 如何在呈现的 EJS 中呈现 EJS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44377963/

25 4 0
文章推荐: c - 如何在C中将shell文件 "source"?
文章推荐: c# - 根据字符串属性是否包含另一个 List 的任何字符串值来过滤 IEnumerable