Используя стартовый проект компонента Stencil, я создал простой объект my-component и опубликовал его в npm здесь: https://www.npmjs.com/package/@marekknows/my-component
Затем я использовал проект electronic-webpack-quick-start для создания простого приложения, в котором используется ранее упомянутый компонент. Код здесь: https://github.com/mmakrzem/myApp
Я могу запустить приложение Electron с npm start
, но my-component не отображается в окне. Документация по трафарету (https://stenciljs.com/docs/distribution) описывает, как использовать модули узлов, однако я подозреваю, что это еще не все, чтобы эта работа работала.
Код, который я генерирую, таков:
<html>
<head>
<meta charset="utf-8">
<script>
require("module").globalPaths.push( "C:/Users/mkrzeminski/Documents/webWork/__help/myApp/node_modules")
require("source-map-support/source-map-support.js").install()
</script>
</head>
<body>
<div id="app"></div>
<script type="text/javascript" src="renderer.js"></script>
<div>Hello Electron</div>
<script src="node_modules/@marekknows/my-component/dist/my-component.js"></script>
<my-component></my-component>
</body>
</html>
Но инструменты разработчика Electron (chrome) говорят:
Refused to execute script from 'http://localhost:56759/node_modules/@marekknows/my-component/dist/my-component.js' because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled.
Я также не знаю, как изображения, найденные в моем компоненте node_modules\@marekknows\my-component\dist\collection\assets
, должны корректно разрешаться Электроном.