搜索

首页  >  问答  >  正文

javascript - express router.get()函数与mongoose连用错误

下列代码中被注释部分存在错误,如果将两端注释符号/**/去掉就会出现render渲染错误。

var express = require('express');
const mongoose = require('mongoose');
const UserModel=mongoose.model('UserModel');

var router = express.Router();
const ObjectId = mongoose.Schema.Types.ObjectId;
const connection = mongoose.connect('mongodb://localhost/likeread').connection;
connection.on('error',(err)=>{
        console.log(err);
    })
    .on('open',(res)=>{
        console.log('success!');
    });


/* GET users listing. */
router.get('/', function(req, res, next) {

    /*var user_model = new UserModel({username:'xiao',email:'email@.com'});
    user_model.save((err,res)=>{
        if(err)
            console.log(err);
        
    });

    connection.disconnect((err,res)=>{
        if(err)
            console.log(err);
    });*/
      res.render('user.pug');
});


module.exports = router;

错误

at EventEmitter.render (D:\node\likeread\node_modules\express\lib\application.js:580:17)
    at ServerResponse.render (D:\node\likeread\node_modules\express\lib\response.js:966:7)
    at D:\node\likeread\app.js:60:7
    at Layer.handle_error (D:\node\likeread\node_modules\express\lib\router\layer.js:71:5)
    at trim_prefix (D:\node\likeread\node_modules\express\lib\router\index.js:315:13)
    at D:\node\likeread\node_modules\express\lib\router\index.js:284:7
    at Function.process_params (D:\node\likeread\node_modules\express\lib\router\index.js:335:12)
    at next (D:\node\likeread\node_modules\express\lib\router\index.js:275:10)
    at Layer.handle_error (D:\node\likeread\node_modules\express\lib\router\layer.js:67:12)
    at trim_prefix (D:\node\likeread\node_modules\express\lib\router\index.js:315:13)
    at D:\node\likeread\node_modules\express\lib\router\index.js:284:7
    at Function.process_params (D:\node\likeread\node_modules\express\lib\router\index.js:335:12)
    at Immediate.next (D:\node\likeread\node_modules\express\lib\router\index.js:275:10)
    at Immediate.<anonymous> (D:\node\likeread\node_modules\express\lib\router\index.js:635:15)
    at runCallback (timers.js:668:20)
    at tryOnImmediate (timers.js:639:5)
世界只因有你世界只因有你2752 天前643

全部回复(2)我来回复

  • 天蓬老师

    天蓬老师2017-05-16 13:34:48

    connection.disconnect((err,res)=>{
        if(err)
            console.log(err);
    });*/
      res.render('user.pug');

    你这是什么鬼? res.render('user.pug');放到函数外面?

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 13:34:48

    render和disconnect应该放到save完成的回调函数内部执行

    回复
    0
  • 取消回复