这是来自YelpCamp,Colt Steele的课程。我在index.ejs文件中的这行代码上得到了一个错误。
const campgrounds = <%- JSON.stringify(campgrounds) %>;
我试过这个:
const campgrounds = '<%-JSON.stringify(campgrounds) %>';
然后我使用Chrome上的控制台,显示未定义露营地,即使我将露营地放在campgrounds.js(控制器文件)的render()方法的参数中。
module.exports.index = async (req, res) => {
const campgrounds = await Campground.find({});
res.render('campgrounds/index', { campgrounds });
}
如果没有足够的信息,让我知道,这样我就可以编辑操作。请帮助,谢谢。
1条答案
按热度按时间djp7away1#
要在ejs文件的script标记中使用EJS标记,需要用反斜杠转义script标记。例如,如果要在脚本中使用〈%= %〉标记,则需要如下编写:〈%= %〉。这将告诉EJS不要将该标记解析为EJS标记,而只是将其解析为常规脚本标记。您也可以在脚本标记中使用〈%- %〉和〈% %〉标记,但它们将被解析为EJS标记,并且还必须进行转义。