model.remove给出了modelname.remove(...)。exec不是一个函数

时间:2017-07-30 12:20:23

标签: node.js mongoose

我一直收到这个错误:

Service

我尝试删除.exec但是它无法识别我的函数(错误,数据)

这是我的功能

Mongoose: invoice.remove({ _id: 3 }, {})
TypeError: invoiceRecord.remove(...).exec is not a function

当我的var deleteInvoice = () => { return new Promise((resolve, reject) => { invoiceRecord.remove( ).exec(function (err, data) { if (err) { reject(new Error('deleteInvoice ERROR : ' + err)); return; } if (data.result.n == 0) { reject({code:"INVOICE_NOTFOUND", err:"This invoice could not be found: " + invoiceRecord._id}); return; } resolve(data); }) })}; 已经拥有需要删除的数据时,我该怎么做呢?

这有效:

invoiceRecord

这不是:

invoiceTable.remove (
    { _id: invoiceRecord._id }
,function(err, data) {

我真的不明白为什么

1 个答案:

答案 0 :(得分:3)

记录了正确的语法here

由于所有异步Mongoose方法都已经返回promises,因此可以将代码重写为:

equals(Obj o)