搜尋

首頁  >  問答  >  主體

node.js - nodejs堆栈溢出怎么解决?

突然就提示Maximum call stack size exceeded了

控制台:
bbs.js : 1
bbs_a: 2
bbs.js : 2
bbs_a: 2
invoked[readComment]
bbs.js :4
GET /bbs 500 1368.168 ms - 64

router.get('/', function(req, res) {
    console.log("bbs.js : 1");
    var comment = new Bbs();
    console.log("bbs.js : 2");
    comment.readComment(function(err, result) {
        if (err) {
            console.log("bbs.js :3");
            res.status(404).end(err);
        } else {
            console.log("bbs.js :4");
            res.render('bbs', {
                items: result
            });
        }
    });
});

怪我咯怪我咯2781 天前553

全部回覆(1)我來回復

  • PHP中文网

    PHP中文网2017-04-17 11:41:33

    可以在呼叫函數的時候,加上一個setTimeout(func, 0),這樣不是直接的遞歸函數,而是放到了nodejs的事件回應佇列裡

    回覆
    0
  • 取消回覆