目前正在学习快递,但无法获得值,我不确定我到底做错了什么。任何帮助不胜感激
我无法从 JSON 文件中获取通过对象提供给视图的键值。
我可以显示 1 个键值totalPrice
但我无法检索产品 ID 或数量值。
我已经尝试了很多事情,在调试模式与代码期间,我可以看到控制器中的cart.products
确实解析为具有 2 个对象的数组。
我可以显示带有输出<%= cart %>
[object Object], [object Object]
购物车.json
{
"products":[
{
"id":"7275",
"qty":2
},
{
"id":"5697",
"qty":2
}
],
"totalPrice":159.96
}
购物车.js(控制器(
exports.getCart = (req, res, next) => {
Cart.fetchAll((cart) => {
res.render('shop/cart', {
pageTitle: 'Cart',
path: '/cart',
cart: cart.products,
totalPrice: cart.totalPrice
});
})
}
(查看(使用 EJS 引擎渲染,以获得totalPrice
工作正常
<p>Total price: <b>£<%= totalPrice %></p></b>
但由于某种原因,即使输出 2 个div,我也无法获得id
或qty
。 因此,购物车中有 2 种产品,但无法检索 ID 或数量的键值
<% for (let product in cart) { %>
<div>
<%= product.id %>
<%= product.qty %>
</div>
<% } %>
cart
是一个对象数组,而不是对象本身。试试这个:
<% cart.forEach(function(product) { %>
<div>
<%= product.id %>
<%= product.qty %>
</div>
<% }); %>