Ich mache eine Elektronen-App und möchte eine Schaltfläche in meiner index.html
Datei erstellen, um den Standard-Internetbrowser (zB Chrome) auf meiner GitHub-Repository-Website zu öffnen. Ich habe andere StackOverflow-Fragen dazu mit erfolgreichen Antworten gesehen, aber sie enthalten JavaScript-Schnipsel und ich weiß nicht, wo ich sie hinstellen soll.Externe Links in Electron mit dem HTML-Anchor-Tag öffnen
Antwort
Verwenden Sie die shell module:
Fügen Sie den folgenden Code zu y unsere main.js:
An seinem Anfang:
const {ipcMain} = require('electron');
const {shell} = require('electron');
Nach der app.on Funktion:
ipcMain.on('loadGH', (event, arg) => {
shell.openExternal(arg);
});
Im Kopf Ihrer index.html müssen Sie dann den ICP-Modul instanziiert :
<script>
const ipc = require('electron').ipcRenderer;
</script>
das Onclick-Ereignis das Laden des neuen Fensters auszuführen verwenden Sie dann tatsächlich:
<a HREF="#" onclick="ipc.send('loadGH','http://github.com/yourGitHubName');">Link</a>
Diese Antwort bezieht sich auf eine frühere, ambivalente Version der Frage und weist dann auf die Notwendigkeit hin, ein neues Elektronenfenster zu öffnen.
Wenn Sie "externe Verbindung" sagen, nehme ich an, dass Sie ein anderes Fenster öffnen möchten, das Ihr github Repo enthält.
An seinem Anfang:
const ipcMain = require('electron').ipcMain;
Innerhalb der app.on Funktion:
var externalWindow = new BrowserWindow ({
width: 800,
height: 600
})
Dies kann durch Hinzufügen des folgenden Code in Ihre main.js erfolgen
Nach der app.on Funktion:
ipcMain.on('loadGH', (event, arg) => {
externalWindow.loadURL(arg);
});
Im Kopf Ihrer index.html müssen Sie dann den ICP-Modul instanziiert:
<script>
const ipc = require('electron').ipcRenderer;
</script>
dann das Onclick-Ereignis in einem href verwenden, um tatsächlich das Laden des neuen Fensters auszuführen:
<a HREF="#" onclick="ipc.send('loadGH','http://github.com/yourGitHubName');">Link</a>
Gern geschehen, froh, wenn es hilft. –
Welche 'app.on'-Funktion sollten die ersten und zweiten Snippets enthalten? Ich habe zwei "app.on" -Funktionen und die erste prüft, ob die Anwendung, wenn die 'process.platform' nicht gleich'darwin' ist. In den Kommentaren von GitHub heißt es, dass es etwas mit OS X zu tun hat. Ich bin mir nicht sicher, ob Sie diese zusätzlichen Funktionen haben oder nicht - unsere 'main.js'-Dateien können sich unterscheiden. Der eine, den ich gerade erwähnt habe, ist auch so deklariert ... 'app.on ('window-all-closed', function() {' – andersamer
Das ist gut, du musst nach app.on suchen ('ready', Funktion {...}), das ist derjenige, der beim Start der App aufgerufen wird. –
- 1. AngularJs öffnen externe Links in einer Cordova App
- 2. Öffnen Sie externe Links im Browser mit Android Webview
- 3. Cordova 6.0 externe Links
- 4. Externe Links in einem neuen Tab ohne jQuery öffnen
- 5. Öffnen Sie externe Links in Telefon Lücke 1.6.0
- 6. Externe Links in CodeIgniter
- 7. 'Masking' externe URL-Links mit RewriteProxy derictive
- 8. Öffnen Sie verschiedene Links mit dem gleichen Anfang
- 9. Öffnen Sie mehrere dynamische Links mit dem gleichen AJAX-Aufruf
- 10. Externe Playstore Anwendung öffnen
- 11. Electron: Wie kommuniziere ich mit dem Browserfenster?
- 12. Öffnen von Links mit Tastendruck in iTerm2
- 13. Einen Link von Electron im Browser öffnen
- 14. Datei von Anchor-Tag mit Electron speichern
- 15. Externe Navigations- und Update-Links laden
- 16. Zeige eine leere_Seite ohne URL nach dem Öffnen eines Links
- 17. Öffnen Sie alle Links mit jQuery .load
- 18. Mit Electron-Code in Browser
- 19. Kann ElasticSearch lokal mit Electron verpackt werden?
- 20. Links zu Apps in iOS öffnen
- 21. Öffnen Sie Links in Safari statt UIWebVIEW?
- 22. Tkinter öffnen Sie eine externe exe-Datei
- 23. Verpackung Electron Apps mit externen Dateien
- 24. Phonegap externe Links außerhalb der App von einer Whitelist-URL aus öffnen
- 25. Öffnen Sie Google-Links in neue Registerkarte
- 26. OnUnload-Nachricht für externe Links benötigt
- 27. Cordova Wrapper App, wo interne Links laden in der App, externe Links laden im Browser
- 28. Ungesicherte Inhaltswarnungen auf Seiten mit SSL für externe Links?
- 29. Kendo UI Mobile - Externe Links können nicht geöffnet werden
- 30. Invoke ActiveX In Electron
Danke! Es funktioniert jetzt. Ich habe vergessen, das in meiner Frage hinzuzufügen :) – andersamer