2016-10-21 26 views
0

創建用戶的小應用程序,應用程序有2個文件(app.js)和業務邏輯文件(models/users.js),錯誤信息發生在您要創建新用戶如下:Express-MVC - 創建新用戶的單獨模型文件

錯誤消息

var newuser = new userAA({ 
      ^

TypeError: userAA is not a function 
    at Object.<anonymous> (e:\2016\db-mongoose-seperat-file\db-MONGOOSE-seperate.js:25:15) 
    at Module._compile (module.js:409:26) 

我user.model.js

var mongoose=require('mongoose'); 

//schema 
var userSchema =mongoose.Schema({ 
    username:{ 
     type:String, 
     index:true 
      }, 
    password:{type:String}, 
    email:{type:String}, 
    name:{type:String} 
}); 

// export model 
module.exports=mongoose.model('usermodel',userSchema); 

// export model methods 
module.exports={ 
    dummyfunc:function(){ console.log("Dummy func111111111"); }, 
    dummyfunc2:function(){ console.log("Dummy func2222222"); }, 
}; 

我app.js

var express=require('express'); 
var http= require('http'); 
var app=express(); 
var mongoose=require('mongoose'); 

// connect to db 
mongoose.connect('localhost:27017/logindb2'); 

// include mongoose schema-model to app.js 
var userAA=require('./models/users.models'); 

userAA.dummyfunc(); 
userAA.dummyfunc2(); 


// ERROR in the following line 'userAA' is not a function 

var newuser = new userAA({ 

    username:"Mr.Zombi", 
    password:"mJdmOdmn3k=34", 
    email:"[email protected]", 
    name:"f.name" 
}); 

app.get("/",function(req,res){ 
    userAA.dummyfunc(); 
    userAA.find({},function(err,docs){ 
    console.log(docs); 
    res.send(docs); 
    }); 
}); 

http.createServer(app).listen(5000,function(){ 
    console.log('Run db-MONGOOSE Server app'); 
}); 

回答

0

您使用module.exports兩次。刪除

module.exports={ 
dummyfunc:function(){ console.log("Dummy func111111111"); }, 
dummyfunc2:function(){ console.log("Dummy func2222222"); }, 
}; 

userAA.dummyfunc(); 
userAA.dummyfunc2(); 

將使它發揮作用。

相關問題