【问题标题】:confusion with res.render in javascript与 javascript 中的 res.render 混淆
【发布时间】:2020-06-03 18:22:25
【问题描述】:

我在业余时间一直在上编码课,有些代码有点混乱:

  • 第一个是HTML中的action属性
  • 第二个是这段代码:

    app.get("/", (req, res) =>// The / is a shortcut for index.html
    {
        res.render(index);//
    }); 
    

让我感到困惑的是 index.html 是函数的 req 部分,在这个函数中,我们只是通过像以前一样呈现确切的页面来响应(这有什么意义)

  • 第三个也是最后一个混淆与这里的这段代码有关:

    app.post("/thanks.html", (req, res) =>
    {
        data = [];
        data.push(req.body);
        res.render("thanks", {data});
    }
    

这段代码让我感到困惑的是,它说我们正在从Thanks.html 中获得一个尚未生成的req。当 res.render 显示Thanks.html 页面时,它就生成了。

【问题讨论】:

  • 感谢您帮我编辑!

标签: javascript html express response body-parser


【解决方案1】:

我们只是通过像以前一样呈现确切的页面来响应(这有什么意义)

没有意义,但它看起来像一个旨在演示基本原理的教程,而不是实用和有用的东西。

这段代码让我感到困惑的是,它表示我们正在从Thanks.html 中获得一个尚未生成的req。

app.postapp.get 的第一个参数是浏览器向服务器请求的URL 中应出现的路径

不是文件名。

响应由作为第二个参数的函数中的代码确定。除非代码显式读取文件,否则这不是文件。

res.render("thanks", {data}); 告诉 Express 使用名为 thanks 的模板(您之前应该有 configured a template engine),该模板从请求中传递数据。

如果您还没有创建thanks 模板,那么对/thanks.html 的请求可能只会导致服务器抛出错误。

【讨论】:

  • 好的,谢谢,没有意义的东西很奇怪,因为我看过他们的另一个教程,他们再次使用它
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-28
  • 1970-01-01
  • 2020-01-21
  • 2014-07-09
  • 2016-02-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多