电子无法加载模块

时间:2019-06-27 09:17:07

标签: angular electron

当我尝试将Angular Project作为电子应用程序加载时,出现以下错误:

  

无法加载模块脚本:服务器以非JavaScript MIME类型“”响应。根据HTML规范对模块脚本强制执行严格的MIME类型检查。**

我使用了本教程来创建应用程序,现在我正在尝试添加一些组件。因此,我的代码类似于本教程中提供的代码,我刚刚在Homecomponentng generate之间添加了代码。

https://malcoded.com/posts/angular-desktop-electron/

在教程评论部分提供的解决方案不适用于我,或者我做错了事。

2 个答案:

答案 0 :(得分:2)

我最近遇到了同样的问题,经过一些研究发现此错误是由于Angular 8没有将MIME类型添加到转换为js的Typescript文件中引起的。如果您ng serve并检查页面,您会发现js脚本的类型为"module",这会使Electron感到困惑。如本GitHub issue所述,有几种解决方法。

对我有用的只是将"target"的{​​{1}}中的"compilerOptions"属性更改为tsconfig.json

我希望有人觉得这有用。

答案 1 :(得分:0)

在main.ts的“ createWindow”函数中,您看到此配置了吗? :

webPreferences: { nodeIntegration: true }

在使用命令

创建浏览器窗口时,它应该存在
new BrowserWindow({})

在括号内,您将拥有窗口尺寸的尺寸,这也是webPreferences应当使用的位置。

严格的MIME类型错误很可能是您的Electron构建错误地解释了ES6 Javascript或打字稿。

因此将nodeIntegration设置为true,应该可以解决问题