2016-04-07 7 views
3

In meinem main.js, ich habe:verwenden, erfordern, wenn Elektronen-App in einem asar verpackt ist

var mainFrm = require('./MainFrm'); 

Dies funktioniert gut, außer wenn die Anwendung als asar-Datei erstellt. Ich erhalte den Fehler 'Modul nicht gefunden'.

In der Dokumentation wird die folgende zu verwenden:

require('/path/to/example.asar/dir/module.js'); 

habe ich versucht, das aber den gleichen Fehler habe. Wo fängt der Weg an, wenn man das oben genannte benutzt? Beginnt der Pfad mit electron.exe? Wenn ich require ('/ resources/app.asar/MainFrm.js') verwende, welchen Pfad verwende ich dann für OS X-Apps, da sich der Resources-Ordner an einem anderen Ort befindet? Welchen Pfad sollte ich während der Entwicklung/Fehlersuche verwenden (d. H. Nicht in einem Asar)?

Antwort

0

Ich denke, Sie haben möglicherweise 2 Probleme. Zuerst müssen Sie möglicherweise explizit über die Dateierweiterung, also auf der Suche nach MainFrm.js, nicht nur MainFrm. Versuchen Sie zweitens, resolve zu verwenden, um den Namen relativ zum aktuellen Verzeichnis zu ermitteln.

Eine Möglichkeit, dies zu lösen, ist der Weg zur Laufzeit zu lösen, wie folgt aus:

var mainFrm = require("path").resolve(__dirname, "./MainFrm.js"); 

Versuchen Sie, einige Kombinationen davon und sehen, ob es hilft nicht.

Verwandte Themen