我的文件结构有一个奇怪的问题。出于某种原因,在创建服务器并运行它之后,我无法让index.html运行,除非它在文件夹中。浏览器只显示“无法获取/”。对于我在index.html中使用的JS文件,也可以这样说。除非它们在文件夹中而不在根目录本身中,否则它们不会加载到index.html中。这是正常的还是因为我的server.js文件设置方式?
以下是代码:
var express = require('express');
var path = require('path');
var app = express();
app.use(express.static(path.join(__dirname, './views')));
app.listen(8000, function() {
console.log("Listening on Port 8000");
})
文件夹/文件结构是:
Root Directory
- node_modules
- views
-js
-script.js
- pages
-about.html
-contact.html
-home.html
- index.html
- server.js
问题是文件结构是:
Root Directory
- node_modules
- pages
-about.html
-contact.html
-home.html
- index.html
- script.js
- server.js
express.static也指向页面而不是视图。
有关为何会出现这种情况的建议吗?提前谢谢。
答案 0 :(得分:0)
简单地说,express.static(path.join(__dirname, './views'))
将投放文件夹views
中的所有文件
如果你去/pages/index.html
。如果存在view
,这将检查/page/index.html
的文件夹index.html
,它将为您提供此文件,否则它将检查您是否有任何句柄路由逻辑
您可以设置多服务静态。