当我尝试将Angular Project作为电子应用程序加载时,出现以下错误:
无法加载模块脚本:服务器以非JavaScript MIME类型“”响应。根据HTML规范对模块脚本强制执行严格的MIME类型检查。**
我使用了本教程来创建应用程序,现在我正在尝试添加一些组件。因此,我的代码类似于本教程中提供的代码,我刚刚在Homecomponent
和ng generate
之间添加了代码。
https://malcoded.com/posts/angular-desktop-electron/
在教程评论部分提供的解决方案不适用于我,或者我做错了事。
答案 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,应该可以解决问题