Mongoose TypeError:模式不是构造函数,我尝试过其他帖子中的解决方案,但没有任何工作

时间:2019-06-09 09:28:25

标签: node.js mongoose schema

我正在使用React.js和MongoDb进行练习,我尝试使用Mongoose保存一些数据,但是它一直返回TypeError:模式不是构造函数。

我使用Postman而不是通过React.js通过浏览器对其进行了测试。

我检查了许多类似的Stackoverflow帖子,但无法弄清楚为什么我的代码不起作用。

这是我的Schema代码:

const mongoose = require("mongoose");

const ContactSchema = mongoose.Schema({
  name: String,
  number: Number
});

module.exports = mongoose.model("ContactData", ContactSchema);

这是我的POST请求:

router.post("/create_contact", (req, res) => {
  const { name, number } = req.body

  let contact = new ContactData(
    name,
    number
  );

  contact.save((error, contact) => {
    if (error) {
      return console.error(error);
    }

    return res.json(contact);
  });
});

连接到本地MongoDb并运行Express服务器没有发现问题。

我在这里想念什么?任何帮助将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:1)

实例化新模式时,需要使用 new 关键字:

const ContactSchema = new mongoose.Schema({
  name: String,
  number: Number
});

我希望这会有所帮助。