我对Node还是很陌生,但是基本上,我想像这样要求将route.js放入我的app.js文件中
var express = require("express"),
app = express(),
routes = require('./routes/index');
const port = process.env.PORT || 3000;
app.listen(port, () => console.log(`app is running on ${port}!`))
拥有我的route / index.js文件:
var express = require("express");
var router = express.Router();
//root route
router.get("/", function(req, res){
res.render("hello world");
});
问题是当我进入localhost:3000时出现错误
无法获取/
我可以在我的index.js文件中显示console.log('hi'),该文件显示在终端中,因此我知道该文件已被拉入。我确定它很简单,但是无论我尝试什么都不会不行。
这也是我的package.son文件的依赖项
"dependencies": {
"body-parser": "^1.14.1",
"connect-flash": "^0.1.1",
"cookie-parser": "^1.4.3",
"dotenv": "^4.0.0",
"ejs": "^2.3.4",
"express": "^4.13.3",
"express-session": "^1.11.3"
}
在修复此错误后,我会继续处理其余的问题。
答案 0 :(得分:0)
您的 app.js 需要实际使用app.use()
使用路由。
app.js
var express = require("express");
var routes = require('./routes/index');
var app = express();
const port = process.env.PORT || 3000;
app.use('',routes);
app.listen(port, () => console.log(`app is running on ${port}!`));
...以及您的 routes.js router
需要导出,因此可以用作 app.js 中的需求。
./ routes / index.js
var express = require("express");
var router = express.Router();
//root route
router.get("/", function(req, res){
res.render("hello world");
});
module.exports = router;