javascript - 尝试将数据从表单传递到页面,但未定义获取 ""

标签 javascript node.js mongodb express

我正在尝试构建一个 Node 应用程序。我已经正确构建了我的路线,并且正确安装了所有依赖项,但是当尝试加载(“/)”主页“时,我得到“newPost”未定义。(“/new)页面工作正常,这是我的代码好像。我还正确链接到了架构路线。先感谢您!

  var express= require("express");
var app = express();
var mongoose = require("mongoose");
var bodyParser = require("body-parser");
var Post = require("./models/post");



app.set("view engine","ejs")
app.use(bodyParser.urlencoded({extended: true}));
mongoose.connect("mongodb://localhost/blog")

//=================================================
app.get("/",function(req,res){
    Post.find({},function(err,foundPost){
        if(err){
            console.log(err)
        }else{
        res.render("homepage",{post:newPost});  <--- this is the problem
        }
    })

});

app.get("/new",function(req,res){
    res.render("post/new")
});


app.post("/",function(req,res){
    var title= req.body.title;
    var image= req.body.image;
    var description = req.body.description;
    var fullPost ={title:title,image:image,description:description};
    Post.create(fullPost,function(err,newPost){
        if(err){
            console.log(err)
        }else{
            res.redirect("/")
        }
    })

})

最佳答案

异常(exception)是告诉你确切的问题

I get "newPost" is not defined

newPost 这里不存在....

app.get("/",function(req,res){
    Post.find({},function(err,foundPost){
        if(err){
            console.log(err)
        }else{
        res.render("homepage",{post:newPost}); 
        }
    })

});

您是否想使用foundPost

关于javascript - 尝试将数据从表单传递到页面,但未定义获取 "",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42293281/

相关文章:

javascript - 这个替换函数有什么作用?

javascript - 如何在javascript中更改表格单元格的颜色

javascript - AJAX 多表单提交

javascript - 如何等待所有 Promise 在 ExpressJS 中解决?

sql-server - 无法使用sequelize 连接到SQL Azure 数据库,但本地主机上的SQL Server 工作正常

php - 无法使用 PHP 在 mongodb 上进行身份验证

javascript - 如何在 JavaScript 变量中包含 JavaScript 标签?

mongodb - 无法使用 express.js 中的 put 请求更新数据库

c# - MongoDB for .Net简单显示数据示例

node.js - 如何在不使用 npm 的情况下安装 node.js 模块?