如何使用角度cli导入角度为2的电子

dav*_*ode 3 node.js webpack electron angular-cli angular

我正在尝试使用Angular 2(使用最新的基于webpack的角度cli)为gui原型化一个Electron应用程序,但是因为我没有得到如何在我的angular2组件中导入Electron api而陷入困境.具体来说,我希望能够在点击ui中的按钮时打开一个新的BrowserWindow ...所以:

<button type="button" (click)="openNewWindow()">
    open
</button>
Run Code Online (Sandbox Code Playgroud)

在我的组件中:

openNewWindow() {
      let appWindow = new BrowserWindow({width: 800, height: 600});
      appWindow.loadUrl('http://www.google.com');
  }
Run Code Online (Sandbox Code Playgroud)

但是......如何导入BrowserWindow?!

通过使用:

import { BrowserWindow } from 'electron';
Run Code Online (Sandbox Code Playgroud)

我得到一个"没有模块错误",并按照这个问题的答案:Webpack找不到模块'电子'我得到:

syntax error near unexpected token ( var electron = require('./')
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

PS.通过运行" electron ."而不BrowserWindow导入应用程序正常工作

小智 8

运行命令npm install electron @types/electron 然后使用正常导入它

import { ipcRenderer } from 'electron'.

如果你遇到任何问题,尝试运行npm eject,将生成webpack.config.js,在module.exports的顶部添加"target":"electron-renderer"