require()抛出“AssertionError: missing path” - Node js

3
我正在尝试一个简单的Node.js应用程序。一切都很好,直到我将数据库模型分离到“用户”文件中并在routes.js中需要它时,当我尝试运行服务器时,它会出现“AssertionError: missing path”错误。 routes.js(路径='demo/app/routes.js')
var User=require('./models/user');

module.exports=function(app){
    app.get('/',function(req,res){
        res.send("hello world");
    });

    app.get('/:username/:password',function(req,res){
        var newUser =new User();
        newUser.local.username=req.params.username;
        newUser.local.password=req.params.password;
        console.log(newUser.local.username);
        newUser.save(function(err){
            if(err){
                throw err;
            }
        });
        res.send('success');
    });
}

user.js(路径='demo/app/models/user.js')

var mongoose=require(mongoose);

var userScheme=mongoose.Schema({
    local:{
        username:String,
        password:String
    }
});

module.exports=mongoose.model('User',userScheme);

server.js 是运行文件(演示/demo/server.js)

var express=require('express');
var app=express();
var port =process.env.PORT||3000;

var morgan=require('morgan');
var cookieParser=require('cookie-parser');
var session=require('express-session');
var mongoose=require('mongoose');

var configDB=require('./config/database.js');
mongoose.connect(configDB.url);

app.use(morgan('dev'));
app.use(cookieParser());
app.use(session({
    secret:'pokemonGo',
    saveUninitialized:true,
    resave:true
}));

require('./app/routes.js')(app);

app.listen(port);
console.log('server running ');

错误信息如下所示:

assert.js:90
  throw new assert.AssertionError({
  ^
AssertionError: missing path
    at Module.require (module.js:351:3)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/Users/menaka/WebstormProjects/cardCreaterServer/app/models/user.js:4:14)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/Users/menaka/WebstormProjects/cardCreaterServer/app/routes.js:4:10)
    at Module._compile (module.js:409:26)
    at Object.Module._extensions..js (module.js:416:10)
    at Module.load (module.js:343:32)
    at Function.Module._load (module.js:300:12)
    at Module.require (module.js:353:17)
    at require (internal/module.js:12:17)

2
var mongoose=require(mongoose); --> var mongoose=require('mongoose'); - Yury Tarabanko
@YuryTarabanko 非常感谢,它起作用了...我真的很新手 node js..再次感谢。 - menaka
1个回答

9

这是一个语法错误。

修改。

var mongoose=require(mongoose);

转换为 -->

var mongoose=require('mongoose');

特别感谢@YuryTarabanko。

1
这明显应该是一个ReferenceError:XXXXX未定义 :-( - Angelos Pikoulas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接