Я пытаюсь написать простейший сервер, который обслуживает html-страницу с помощью клиентских сценариев.
Уже пробовал на основе http://expressjs.com/en/starter/static-files.html, Использование express.js для обслуживания html-файла вместе ссценарии, CSS и изображения и Как загрузить файл JS в html, используя экспресс-сервер , но все равно я не понимаю.
Структура файла, который я использую:
node_modules
resources
resources/page.html
resources/script.js
index.js
package.json
index.js:
const express = require('express');
const app = express();
const port = 3000;
const path = require('path');
app.use(express.static(__dirname + '/resources'));
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname , 'resources', 'page.html'));
});
app.listen(port, () => console.log(`Example app listening on port ${port}!`));
page.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>title</title>
</head>
<body>
Content
</body>
<script scr="script.js"></script>
</html>
script.js:
var i = 0;
setInterval(() => {
if (i < 10) {
console.log(i);
i++;
}
}, 100);
Я набираюадрес браузера Google Chrome localhost:3000/
и страница успешно загружена (отображается строка «Содержимое»), но сценарий script.js
не запущен (пустая консоль).Я ожидаю, что браузер получит файл script.js и выведет номера на консоль при загрузке page.html.