Отказ от ответственности: я новичок в node.js, поэтому я предполагаю, что есть очень простой ответ на этот вопрос.
Я использую node.js в Windows с модулем 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 и запускаю сервер.js , содержимое start.js не загружается.Я получаю:
Это статический абзац.
Любая помощь будет принята.
К вашему сведению, структура моей папки
/
- node_modules
-- http
-- fs
- index.html
- server.js
- start.js