我有一个express服务器,它有一个API来获取食物项目。我有一个ejs索引文件,我想显示食物的名称。
在server.js中,我像这样获取它
app.get('/', async (req, res) => {
try {
fetch('http://localhost:3000/api/food/all')
.then((response) => response.text())
.then((body) => {
res.render('pages/home', {
items: body
})
});
} catch (err) {
console.log("ERROR")
}
})
字符串
现在这个可以工作了。因为在ejs文件中我可以做:<%= items %>
它显示数组如下:*{“message”:“All food items fetched”,“items”:[{"_id”:“658 b484 b34533 ccab 5cd 809 b”,“name”:“Taco”,“additionals”:[{“name”:“Sour Cream”},{“name”:“Tomato”}],“price”:3.5}]} *
当我试图访问items数组的第一个元素时,它给了我一个错误。这是我的代码<%= items.items[0].name %>
我的错误是:无法读取未定义的属性(阅读“0”)
我该怎麽办?
我试过items.items(它呈现,但显示为空白),我试过items.items.name,我试过items.items 'name'],我试过用for循环来做这件事。
不走运。每次它都说它不能读取未定义的属性。
1条答案
按热度按时间e5njpo681#
谢谢大家,解决方案正在改变(在server.js中)
字符串
收件人:
型