gpt4 book ai didi

javascript - 为什么函数变得未定义?

转载 作者:行者123 更新时间:2023-12-02 16:36:03 25 4
gpt4 key购买 nike

我有快速 session ,它在路由方法中初始化:

router.post('/add', function (req, res) {
if (!req.session.cart) {
req.session.cart = cartController.initializeCart();
}
cartController.addToCart(req.body.productId, req.session.cart, function(error, result) {
error ? res.send(error) : res.send(200);
})
});

我有购物车模型作为功能

function cart() {
this.ids = [];
this.addProduct = function (id) {
ids.push(id);
}
}

初始化方法:

  var cartModel = require("../models/cart"); //UPD
initializeCart: function() {
return new cartModel(); //UPD exception throw right after this operation
},

添加购物车方法:

   addToCart: function(id, cart, callback) {
cart.addProduct(id);
.....

session :

var expressSession = require('express-session');
app.use(expressSession({
secret: "someSecret"
}));

但是调用 cart.addProduct() 不会发生,因为 addProduct() 未定义。使用原型(prototype)对我没有帮助。

屏幕: http://prntscr.com/5rz61t

最佳答案

您的代码中没有 cartModel 函数。

尝试return new cart();而不是return new cartModel();

关于javascript - 为什么函数变得未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27923102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com