var express = require("express");
var fs = require('fs');
var sys = require('sys');
var app = express();
app.use(express.logger());
app.get('/', function(req, res){
fs.readFile('/views/index.html');
});
app.listen(8080);
console.log('Express server started');
我不想使用模板引擎玉。如何打开一个位于我的视图文件夹中的简单index.html页面。服务器正在启动,但似乎我无法加载index.html页面。
答案 0 :(得分:7)
使用express 3.0.0rc3,以下工作:
app.set('views', __dirname + '/views');
app.engine('html', require('ejs').renderFile);
或者
app.set("view options", {layout: false});
app.use(express.static(__dirname + '/public'));
所以你的最终代码看起来像这样。
var express = require("express");
var fs = require('fs');
var sys = require('sys');
var app = express();
app.use(express.logger());
app.set("view options", {layout: false});
app.use(express.static(__dirname + '/views'));
app.get('/', function(req, res){
res.render('/views/index.html');
});
app.listen(8080);
console.log('Express server started');
答案 1 :(得分:1)
您现在可以使用res.sendfile('index.html')而不是使用res.send()
答案 2 :(得分:0)
使用express v4.7.1且不使用模板引擎jade即可。
在最新版本中,sendfile()已更改为sendFile()。
对于文件路径,服务器尝试从根目录中查找文件的路径,因此必须指定整个路径或使用“ _dirname”,否则将始终遇到找不到文件的错误
var express = require("express");
var path = require('path');
var app = express();
app.get('/', function (req, res) {
res.sendFile(path.join(__dirname + '/views/index.html'))
});
app.listen(8080);
console.log('Express server started');
希望有帮助。快乐编码:)