Это прекрасно работает как веб-приложение (в браузере Chrome).Я использую lit-html и Polymer для создания веб-компонента.
src / components / helloWorld.js
import { html, render } from "lit-html";
class HelloWorld extends HTMLElement {
constructor() {
super();
this.attachShadow({ mode: "open" });
const template = html`<h2>Hello World</h2>`;
render(template, this.shadowRoot)
}
}
window.customElements.define("hello-world", HelloWorld);
src / index.html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<hello-world></hello-world>
<script type="module" src="components/hello-world.js"></script>
</body>
</html>
Однако попытка реализовать это в Electron не удалась.Конкретная ошибка:
Не удалось загрузить скрипт модуля: сервер ответил не MIME-типом "JavaScript" "".Строгая проверка типов MIME применяется для скриптов модулей в соответствии со спецификацией HTML.
Поэтому я интерпретирую ошибку, чтобы указать на это как на проблему:
<script type="module" src="components/hello-world.js"></script>
Я озадачен, почему он будет работать как веб-приложение, а не как электронное, когда они оба используют хром.Я исследовал эту тему и нашел несколько вопросов о переполнении стека, но не смог полностью понять ответы.
Это то, что я прочитал, и которое мне кажется уместным: Импорт модуля Electron ES6