gpt4 book ai didi

node.js - 为什么在 Node 中调用 mongoose Model.create 时不能链接 .catch

转载 作者:IT老高 更新时间:2023-10-28 23:22:40 24 4
gpt4 key购买 nike

我有一个 Mongoose 模式,正在调用 Model.create()。

当我在 'then' 之后链接 'catch' 时,我得到 undefined 不是一个函数,如果我只是将错误函数作为 'then' 的第二个参数调用,那么我不会。

但是当我调用Model.find等方法时,我可以使用'catch'。

为什么我在调用 Model.create 时不能链接“catch”

var mySchema = Mongoose.Schema({
name: String,
});

作品:

KarmaModel.create({
"name": "ss,
})
.then(function() {
//do somthing
},function()=>{
//do somthing
});

不起作用:

KarmaModel.create({
"name": "ss,
})
.then(function() {
//do somthing
}).catch(function()=>{
//do somthing
});

最佳答案

http://mongoosejs.com/docs/promises.html 中所述

New in Mongoose 4.1.0 While mpromise is sufficient for basic use cases, advanced users may want to plug in their favorite ES6-style promises library like bluebird, or just use native ES6 promises. Just set mongoose.Promise to your favorite ES6-style promise constructor and mongoose will use it.

您可以使用以下方法设置 Mongoose 使用 bluebird :

require("mongoose").Promise = require("bluebird");

关于node.js - 为什么在 Node 中调用 mongoose Model.create 时不能链接 .catch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30672265/

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