我是nodejs编程的新手,我现在有一点问题。当我尝试去localhost:3000 /我想回家控制器和索引功能打印HTML文件。
const express = require('express')
const mongoose = require('mongoose')
const mongodb = require('mongodb')
const app = express();
const homeController = require('./home/homeController.js');
app.get('/', function(req, res) {
res.redirect(homeController.index);
});
app.listen(3000, () => console.log('Example app listening on port 80!'))
var path = require("path");
exports.index = function(req, res){
res.sendFile(path.join(__dirname+'/index.html'));
};
console.log('test33');
此外,我正在使用导出来从其他控制器分离app.js.这是正确的方法吗?我有Python Django框架的历史,我们曾经使用URL来导航我们的程序。
感谢。
无法获得 /function%20(req,%20res)%7B%0A%20%20res.sendFile(path.join(__目录名+' /index.html'));%0A%7D
答案 0 :(得分:2)
您的问题是homeController.index
是一个功能,但您没有调用它。替换:
app.get('/', function(req, res) {
res.redirect(homeController.index);
});
使用:
app.get('/', homeController.index);
答案 1 :(得分:1)
您的homeController.js
导出index
函数,该函数需要两个参数req
和res
。
因此,您必须相应地更新您的app.js:
app.get('/', function(req, res) {
homeController.index(req, res);
});
编辑:顺便说一下,您的应用正在收听端口 3000