Necessita do módulo do nó no componente angular2
não consigo descobrir como exigir módulos de nó nos meus componentes angular2 - especialmente no meu caso, como abrir uma nova janela de electrões dentro de um componente angular2.
O meu componente.html tem algo assim<button class="btn btn-success" (click)="buttonLoginClick()">Login</button>
e dentro do componente.to I use the following
export class LoginComponent {
constructor() {}
buttonLoginClick(): void {
alert("just a test");
const remote = require('electron').remote;
const BrowserWindow = remote.BrowserWindow;
var win = new BrowserWindow({ width: 800, height: 600 });
win.loadURL('./test.html');
}
}
o erro na compilação é dizer
não é possível encontrar o nome 'require'.
1
1 answers
Sei que a pergunta foi feita há mais de dois meses. Mas, uma vez que este é ranking bastante alto no Google para algumas palavras-chave. Vou explicar como consegui que funcionasse...
Opção 1
No seu ficheiro index.htm
Adicione o seguinte bloco dentro do elemento head
<script>
var electron = require('electron');
</script>
Então você pode declinar a variável de elétrons dentro de qualquer arquivo Typescript, por exemplo, um componente...
import { Component } from "@angular/core";
declare var electron: any;
@Component({
...
})
export class FooComponent {
bar() {
var win = new electron.remote.BrowserWindow({ width: 800, height: 600 });
win.loadURL('https://google.com.au');
}
}
Quando ligou para essa função, abrirá uma janela de electrões apontando para google
Opção 2
Esta opção deve ser um pouco mais limpa. Se tiver um ficheirosrc\typings.d.ts
. Então você pode simplesmente dizer ao compilador typescript para registrar a função require
global...
declare var require: any;
E depois pode usar a função require
como faria normalmente
6
Author: Leo, 2020-06-20 09:12:55