2017-11-15 12 views
1

방금 ​​Node.js를 학습하기 시작했습니다. 이 작은 응용 프로그램의 아이디어는 express와 mongosse를 사용하여 일부 사용자를 기반 클라우드 데이터베이스 (mlab을 통해 mongoDB)에 저장하는 것입니다.nodemon - app crashed - 시작하기 전에 파일 변경 대기

나는 두 개의 별도의 파일이 있습니다

의 user.js (모델 /의 user.js)

var mongoose = require('mongoose'); 

module.exports = mongoose.model('User', { 

    email : string , 
    pwd : string 

}); 

server.js (서류 루트)

var express = require('express') 
var cors = require('cors') 
var bparser = require('body-parser') 
var mongoose = require('mongoose') 

var User = require('./models/User.js') 

var app = express() 

app.use(cors()) 
app.use(bparser.json()) 

app.post('/register', (req,res) => { 
    userData = req.body; 
    var user = new User(userData); 

    user.save((err, result) => { 
     if(err) console.log('IL YA UNE ERREUR') 
     result.sendStatus(200); 
    }) 

}) 

mongoose.connect('mongodb://user:[email protected]:61755/myapp', { useMongoClient: true } , (erreur) => { 
    if(!erreur) 
    console.log('Connexion etablie'); 
}) 


app.listen(3000) 

을 나는 실행하면 : nodemon server.js 아래 오류가 발생합니다.

D:\Bureau\MEAN\appBackend\models\User.js:5 
    email : string , 
     ^

ReferenceError: string is not defined 
    at Object.<anonymous> (D:\Bureau\MEAN\appBackend\models\User.js:5:12) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 
    at Module.require (module.js:497:17) 
    at require (internal/module.js:20:19) 
    at Object.<anonymous> (D:\Bureau\MEAN\appBackend\server.js:6:12) 
    at Module._compile (module.js:570:32) 
    at Object.Module._extensions..js (module.js:579:10) 
    at Module.load (module.js:487:32) 
    at tryModuleLoad (module.js:446:12) 
    at Function.Module._load (module.js:438:3) 
    at Module.runMain (module.js:604:10) 
    at run (bootstrap_node.js:389:7) 
[nodemon] app crashed - waiting for file changes before starting... 

이 오류에 대해 알고 계십니까?

+0

당신의 '이메일 변경'PWD –

+0

@FabioAntunes 이메일에 대한 동일한 string'' 문자열 (이 변수는 내가이 유형을 의미하는 것입니다 문자열), 왜 그렇게해야합니까? – MDIT

답변

2

몽구스는 내장 된 생성자 함수를 사용하여 유형을 지정할 것을 기대합니다.이 함수는 대문자로 이름이 지정됩니다 (예 : 이메일`에`문자열 : String, Number, Boolean

var mongoose = require('mongoose'); 

module.exports = mongoose.model('User', { 

    email : String , 
    pwd : String 

}); 
0

module.exports = mongoose.model('User', new mongoose.Schema({ 

    email : 'string' , 
    pwd : 'string' 
    }) 
}); 

을 코드에는 문자열 변수가 없습니다 정의합니다.