Веб-компоненты Electron не могут импортировать компонент как модуль - PullRequest
0 голосов
/ 05 марта 2019

Это прекрасно работает как веб-приложение (в браузере 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.

enter image description here

Поэтому я интерпретирую ошибку, чтобы указать на это как на проблему:

<script type="module" src="components/hello-world.js"></script>

Я озадачен, почему он будет работать как веб-приложение, а не как электронное, когда они оба используют хром.Я исследовал эту тему и нашел несколько вопросов о переполнении стека, но не смог полностью понять ответы.

Это то, что я прочитал, и которое мне кажется уместным: Импорт модуля Electron ES6

...