Mongoose和新的Schema:返回“ReferenceError:Schema未定义”

我正在创build一个新的示例应用程序,我尝试通过Mongoose连接到MongoDB数据库。

我在我的service.js文件中创build了一个新的模式,但是当我运行nodemon app.js时出现以下错误: "ReferenceError: Schema is not defined"

App.js代码:

 var http = require('http'); var express = require('express'); var serials = require('./service'); var app = express(); var mongoose = require('mongoose'); var port = 4000; app.listen(port); mongoose.connect('mongodb://localhost:27017/serialnumbers') app.get('/api/serials',function(req,res){ serials.getSerial(req, res, function(err, data) { res.send(data); }); }); 

Service.js代码:

 var mongoose = require('mongoose'); var serialSchema = new Schema({ serial: {type: String}, game: {type: String}, date: {type: Date, default: Date.now}, }); mongoose.model('serials', serialSchema); exports.getSerial = function(req,res,cb) { mongoose.model('serials').find(function(err,data) { cb(err,data); }); }; 

我在StackOverflow上看到了一个可以作为Mongoose版本的答案。 但是npm list给了我这个:

在这里输入图像描述

任何想法我做错了什么?

确切地说,在你的Service.js ,什么是Schema ? 您没有名为Schema的对象。

 ... var serialSchema = new Schema({ ^^^^^^ 

改变它mongoose.Schema然后它会没事的。