node.js - 为什么是 require('/routes')(app); 不等于在一个 app.js 文件中有相同的代码?
问题描述
以下代码行提供 localhost/join 页面。
路由.js 文件
module.exports = function (app){
app.get("/join", function (req, res){
res.render("join");
});
};
app.js 文件
var express = require("express");
var app = express();
require('./routes')(app);
app.listen(3000, function(){
console.log("Server started at localhost:3000. Ctrl+C to exit.");
});
加入.ejs 文件
<h1> You can sign up here </h1>
<input type="email" placeholder="email address"> </input>
<br>
<input type="password" placeholder="password"> </input>
<br>
<input type="submit"> </input>
然而,当我尝试创建一条app.post()
路线(在 app.js 文件中有效)时,它给了我错误
应用未定义
为什么要给予app.post()
而不给予app.get()
?为什么require('/routes')(app);
不等于在一个 app.js 文件中拥有相同的代码?
解决方案
您的 app.js 应如下所示:
var express = require('express')
var app = express()
require('./routes')(app);
app.listen(PORT-NUMBER)
如果是,那么了解您的 routes.js 与 app.post() 路由的外观将很有帮助。
推荐阅读
- html - 从 index.html 中删除样式表
- asp.net-mvc - 'arguments' 对象不能在 ES3 和 ES5 的箭头函数中被引用。考虑使用标准函数表达式
- python - 使用 Python 和 Selenium 进行网页抓取时,如何从单个页面获取所有 href 链接?
- css - React Native:定位不起作用并且图像位于查看区域下方
- php - 使用未定义的常量名称假定为“标题”(这将在 PHP 的未来版本中引发错误)
- c++ - 头文件非常基本的C++编译问题
- xml - 是否可以从封装的 XaDES 签名中剥离内容以获得分离的签名
- php - PHP - 使用带有 SQLite 的 CONCAT() 的 PDO 问题
- css - URL图像有时加载有时不是vue js
- javascript - 从 Promise 中获取请求数据(RIOT API)