这是controller中products.js的代码
let cart = []; function addToProduct(products) { cart.push(products); } exports.addToCart = (req, res) => { const productId = req.params.id; const sql = `SELECT * FROM products WHERE id = ${productId}`; connection.query(sql, (error, result) => { if (error) { return res.send('Error adding to cart'); } else { res.redirect('/allProducts'); addToProduct(result); console.log("length of cart is"+cart.length); for(let i= 0; i < cart.length; i++) { console.log(cart[i]); } } }); }; function getProducts() { return cart.map(product => ({ name: product.name, description: product.description, price: product.price, stock: product.stock })); } function getTotal() { return cart.reduce((total, product) => total + product.price * product.stock, 0); } exports.getCart = (req, res, next) => { const products = getProducts(); const total = getTotal(); req.cart = { products, total }; return next(); };
这是routes中pages.js的代码
router.post('/add-to-cart/:id', productsController.addToCart); router.get('/cart', productsController.getCart, (req, res) => { res.render('cart', { products: req.cart.products, total: req.cart.total }); });
现在我没有把产品放进我的车里。bs它只是空的,没有显示错误。Exports.addtocart工作正常,但问题是在那之后。请帮我认出它。
我尝试了很多事情,但最终还是在这里