【发布时间】:2020-06-29 12:57:50
【问题描述】:
我无法弄清楚为什么会出现错误。
如果我从 controller.js 中的代码中删除 db.SendTodo,它可以正常工作,但它似乎不适用于 databaseConnect.js 中的 exports.sendTodo
databaseConnect.js 文件 -
//代码
const mongo = require('mongodb');
let db = mongo.MongoClient
const assert = require('assert');
let url = "mongodb://127.0.0.1:27017/"
const express = require('express')
const bodyParser= require('body-parser')
const app = express()
app.use(bodyParser.urlencoded({extended: true}))
db.connect(url, function(err, client) {
if (err) {
console.log("Not Responding " + err);
}else {
console.log("Connection Established");
let database = client.db('todo_app_node');
let coll = database.collection("todos")
//Error is here
exports.SendTodo = (req, res) => {
console.log("Whoooo");
coll.insertOne(body, (err, result) => {
if (err) return console.log(err)
console.log('saved to database')
res.redirect('/')
next()
})
}
//Show The Result
coll.find({}).toArray(function(err, result) {
if (err) {
console.log(err);
}else if (result.length) {
//Responding to the requests
exports.item = result
}else {
console.log("A error occured");
}
client.close()
})
}
})
Router.js
const express = require("express")
const router = express.Router()
const bodyParser= require('body-parser')
const controler = require('./controller/controller.js');
const db = require('./controller/databaseConnect.js');
router.get("/", controler.renderPage);
router.post('/send', db.SendTodo)//Error is this line
router.get("/css/index.css", controler.cssFiles);
module.exports = router;
【问题讨论】:
标签: node.js mongodb express routing