require()抛出“AssertionError:缺少路径” - 节点js

时间:2016-07-23 11:59:11

标签: javascript node.js

我正在尝试一个简单的nodejs应用程序。所有工作正常,直到我将db模型分离到用户文件并在routes.js中需要它。然后当我尝试运行时,它会发出“AssertionError:missing path”错误服务器

routes.js (path ='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 (path ='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)

1 个答案:

答案 0 :(得分:8)

这是语法错误

更改

var mongoose=require(mongoose);

到 - &gt;

var mongoose=require('mongoose');

特别感谢@YuryTarabanko