【发布时间】:2019-03-06 04:35:44
【问题描述】:
免责声明:我是 node.js 的新手,所以我认为这个问题有一个非常基本的答案。
我在 Windows 上使用 node.js,通过 http 模块生成一个静态页面,其内容从 js 文件生成。
服务器文件(server.js):
var http = require('http');
var fs = require('fs');
fs.readFile('./index.html', function (err, html) {
if (err) {
throw err;
}
http.createServer(function(request, response) {
response.writeHeader(200, {"Content-Type": "text/html"});
response.write(html);
response.end();
}).listen(8080);
});
HTML 文件 (index.html):
<!DOCTYPE html>
<html>
<body>
<div id="div1">
<p id="p1">This is a static paragraph.</p>
</div>
<p>
<script type="text/javascript" src="start.js"></script>
</p>
</body>
</html>
JS 文件 (start.js)
var para = document.createElement("p");
var node = document.createTextNode("This text is loaded from a js file.");
para.appendChild(node);
var element = document.getElementById("div1");
element.appendChild(para);
当我直接加载 index.html 时,我得到以下输出:
这是一个静态段落。
此文本是从 js 文件加载的。
^^ 这是我想要的输出。
问题: 但是,当我使用 node.js 并运行 server.js 时,start.js > 内容不加载。我明白了:
这是一个静态段落。
任何帮助将不胜感激。
仅供参考,我的文件夹结构
/
- node_modules
-- http
-- fs
- index.html
- server.js
- start.js
【问题讨论】:
标签: javascript html node.js server