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:nodelikereadnode_modulesexpresslibapplication.js:580:17) at ServerResponse.render (D:nodelikereadnode_modulesexpresslibresponse.js:966:7) at D:nodelikereadapp.js:60:7 at Layer.handle_error (D:nodelikereadnode_modulesexpresslibrouterlayer.js:71:5) at trim_prefix (D:nodelikereadnode_modulesexpresslibrouterindex.js:315:13) at D:nodelikereadnode_modulesexpresslibrouterindex.js:284:7 at Function.process_params (D:nodelikereadnode_modulesexpresslibrouterindex.js:335:12) at next (D:nodelikereadnode_modulesexpresslibrouterindex.js:275:10) at Layer.handle_error (D:nodelikereadnode_modulesexpresslibrouterlayer.js:67:12) at trim_prefix (D:nodelikereadnode_modulesexpresslibrouterindex.js:315:13) at D:nodelikereadnode_modulesexpresslibrouterindex.js:284:7 at Function.process_params (D:nodelikereadnode_modulesexpresslibrouterindex.js:335:12) at Immediate.next (D:nodelikereadnode_modulesexpresslibrouterindex.js:275:10) at Immediate.<anonymous> (D:nodelikereadnode_modulesexpresslibrouterindex.js:635:15) at runCallback (timers.js:668:20) at tryOnImmediate (timers.js:639:5)
問題解答
回答1:connection.disconnect((err,res)=>{ if(err)console.log(err);});*/ res.render(’user.pug’);
你這是什么鬼? res.render(’user.pug’);放到函數外面?
回答2:render和disconnect應該放到save完成的回調函數內部執行
相關文章:
1. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題2. javascript - 求賜教:網易郵箱Web端模擬登錄看信的加密參數_ntes_nnid、_ntes_nuid3. javascript - 使用angular 的ui-sref 中出現了中文參數,點擊跳轉后瀏覽器的地址欄里出現轉義后的%AE....%a%44. java - ConcurrentHashMap中的get()方法為什么可以不加鎖?5. javascript - QWebEngineView 如何爬 angular 的動態數據?6. html5 - 這個代碼顯示功能如何實現?7. javascript - 用JS 七牛上傳圖片出現文件已存在的錯誤(file exists)8. 工作近5年,3年Java Web ,近2年前端,未來何去何從?9. css3 - 圖片等比例縮放10. java - 字節流轉成字符串之后,在通過字符串轉成字節流后的文件為什么會不一樣?
