Как я не могу импортировать освещенный HTML с веб-сайта узла

Привет, над небольшим проектом, над которым я работаю, пытаясь изучить узел, у меня есть запрос на получение узла, который читает HTML-файл главной страницы, а затем отправляет его,

На сайте HTML у меня есть тег скрипта (с типом = модуль), и в самом начале скрипта я импортирую модуль lit-HTML, но, похоже, весь тег скрипта не работает, как я могу это исправить? Код узла:

if (req.method === "GET") {     console.log(req.url);   switch (req.url) {  case '/' :      res.writeHead(200,{"Content-Type": "text/html"})        fs.createReadStream("index.html","UTF-8").pipe(res);    break; 

case '/lit-html.js':    var file = fs.readFileSync('lib/lit-html.mjs','UTF-8')  res.writeHead(200,{"Content-Type": "application/javascript"})   res.end(file); break;

А это внутри index.html

<script type="module" src="localhost:8000/lit-html.js"></script> <script> import {html, render} from 'localhost:8000/lit-html.js';

Это в узле

if (req.method === "GET") {     console.log(req.url);   switch (req.url) {  case '/' :      res.writeHead(200,{"Content-Type": "text/html"})        fs.createReadStream("index.html","UTF-8").pipe(res);    break;

case '/lit-html.js':
var file = fs.readFileSync('lib/lit-html.mjs','UTF-8')
res.writeHead(200,{"Content-Type": "application/javascript"})
res.end(file);

ломать;

А это внутри index.html

<script type="module" src="localhost:8000/lit-html.js"></script> <script> import {html, render} from 'localhost:8000/lit-html.js';

person user1714223    schedule 22.10.2018    source источник
comment
Пожалуйста, добавьте минимальный пример кода, демонстрирующий проблему.   -  person Mario Santini    schedule 22.10.2018
comment
Скрипт с type=module означает, что вы загружаете на страницу веб-компонент не простой код javascript.   -  person Mario Santini    schedule 22.10.2018
comment
Разве это просто означает, что я загружаю модуль js? Это не обязательно означает веб-компонент для моего понимания, также я не думаю, что это имеет значение...   -  person user1714223    schedule 22.10.2018
comment
Вы сказали, что у вас есть тег script, я интерпретировал это как новый веб-компонент. Вот почему нам нужно, чтобы вы опубликовали свой код, чтобы понять, что вы делаете.   -  person Mario Santini    schedule 22.10.2018


Ответы (1)


Ваш веб-сервер пытается сопоставить запрос URL для lit-html.js с файлом с именем lib/lit-html.mjs

Если вы установили lit-html через npm, он будет иметь имя файла lit-html.js и будет храниться в node_modules/lit-html/lit-html.js

Как видите, они не совпадают.

Проверьте расширение и расположение файла

person akc42    schedule 24.10.2018