[英]add to cart route node.js
我想在 node.js 快速應用程序中添加到我的購物車,但無需刷新或重定向路線。 有沒有辦法做到這一點? 這是“加入購物車”function 的路線:
router.get('/add-to-cart/:id/:pices', function(req, res) {
var pices = req.params.pices;
var productId = req.params.id;
var cart = new Cart(req.session.cart ? req.session.cart : { });
Product.findById(productId, function (err, product) {
if (err) {
return res.redirect('/');
}
cart.add(product, product._id, pices);
req.session.cart = cart;
res.redirect('/products');
});
});
如您所見,每次將產品添加到購物車時,我都會重定向到 ('/products')。 有沒有辦法讓頁面不會每次都刷新?
謝謝!
這不是后端的問題,而是前端的問題。 我假設您正在使用一個表單元素,其action
設置為該端點。
您正在尋找的是帶有fetch的AJAX 。 不太確定您的前端設計,但我會猜測一下:
在腳本的前端:
yourForm
submit
事件監聽器{credentials: "include"}
以便后端知道要添加到誰的購物車。 (它發送 session 數據)yourForm.addEventListener("submit", async function (ev) {
ev.preventDefault();
await fetch(ev.target.getAttribute("action"), {credentials: "include"});
});
(對於這種類型的操作,您可能需要使用 HTTP 發布請求)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.