Ich habe eine Aurelia-Anwendung in Elektron ausgeführt. Meine Quelldateien sind Typoskript und ich habe Umgebungs typings für Elektron und Knoten.Aurelia: mit ES6-Import für Elektron + Typoskript
Da ich weiß, ich kompiliere für den Einsatz auf Elektron, transpiliere ich mein Typoskript zu es6 und mit Systemmodul laden; das bedeutet, ich kann den transpiler von system.js von abschalten. Ich benutze system.js und jspm, weil dieser Ansatz Aurelia vorangetrieben hat.
Also in meiner ts Datei: Ich möchte in der Lage sein zu tun:
import {remote} from 'electron';
Leider system.js weiß nichts über das Modul Elektron und nicht während der Laufzeit. TypeScript dagegen ist vollkommen glücklich, weil ich die Typings für Elektron und Knoten eingerichtet habe; Ich bekomme auch volle Intelligenz in VSCode.
Hinweis: Wenn Sie versuchen, var electron = require('electron');
in der Kopfzeile zu tun, stört system.js es und es wird nicht geladen. You can place that 'require('electron')' within a class or function and it will work, aber ich finde dieses Ideal nicht.
Frage:Wie kann ich system.js erhalten, um das "Elektronen" -Modul korrekt zurückzugeben, das nur verfügbar ist, wenn Sie die App in Elektron selbst ausführen?
sieht aus wie es mit der nächsten Version von jspm einen besseren Weg geben wird: https://github.com/jspm/jspm-cli/issues/1837 –