错误:当我想在 ejs 文件中显示时,无法在将标头发送到客户端后设置标头



我正在尝试在 json 对象中搜索我需要的数据并将其放在 ejs 文件中,但出现此错误:将标头发送到客户端后无法设置标头。 我必须以其他方式显示数据?

app.set('view engine', 'ejs');
router.get('/:categoryId', (req, res) => {
for (let i = 0; i < jsonSize(jsonObj); i++) {
if(req.params.categoryId == 'mens' ){
res.render('categories',
{
pageTitle: jsonObj[i].page_title,
category: jsonObj[i].name,
});
}
}
});

发生这种情况是因为您在循环中执行.render函数。您还需要调整模板以使用类别数组。

app.set('view engine', 'ejs');
router.get('/:categoryId', (req, res) => {
const categories = [];
for (let i = 0; i < jsonSize(jsonObj); i++) {
if (req.params.categoryId == 'mens') {
categories.push({
pageTitle: jsonObj[i].page_title,
category: jsonObj[i].name,
});
}
}
res.render('categories', categories);
});

最新更新