gpt4 book ai didi

javascript - TypeError : callback. 应用不是函数

转载 作者:可可西里 更新时间:2023-11-01 09:12:00 24 4
gpt4 key购买 nike

我对 Node 和 Mongoose 有点陌生,我正在尝试删除集合中的所有文档。我正在使用这段代码:

app.delete('/accounts', function deleteAccount(req, res, next){

Account.remove({}, {multi:true});
res.json({
message: 'Accounts Deleted!'
});

});

问题是当我向此方法发出 API 请求时,它开始处理并且不会停止,除非我中止它。该代码删除了我收藏中的所有文档,但它在执行时出错。这是它抛出的错误:

events.js:141

throw er; // Unhandled 'error' event ^

TypeError: callback.apply is not a function

我希望我的代码能够正常工作而不会出现此错误,并且我不希望我的请求在处理请求时挂起。欢迎任何建议。

最佳答案

您需要为 remove 方法传递回调:

Account.remove({}, function(err, result){
res.json({
message: 'Accounts Deleted!'
});
});

如果你不想等待完成:

var cmd = Account.remove({});
cmd.exec();
res.json({
message: 'Accounts Deleted!'
});

实际上 remove 有两个参数,第二个参数是可选的。如果存在第二个,则它应该是一个回调。

在删除文档时,您没有multi 选项。

你得到的异常(exception)是 Mongoose 将 {multi: true} 作为回调

关于javascript - TypeError : callback. 应用不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41996345/

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