5

私のmain.jsには、次のものがあります。

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

これは、アプリケーションが asar ファイルとしてパッケージ化されている場合を除き、正常に機能します。「モジュールが見つかりません」というエラーが表示されます。

ドキュメントには、次を使用するように記載されています。

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

私はそれを試しましたが、同じエラーが発生しました。上記を使用する場合、パスはどこから始まりますか? パスは electron.exe で始まりますか? また、require('/resources/app.asar/MainFrm.js') を使用する場合、Resources フォルダーが別の場所にあるため、OS X アプリに使用するパスは何ですか? 開発/デバッグ中にどのパスを使用する必要がありますか (つまり、asar 内ではない)。

4

1 に答える 1

0

2つの問題がある可能性があると思います。まず、ファイル拡張子について明示する必要がある場合があります。したがってMainFrm.js、単にMainFrm. 次に、 を使用resolveして、現在のディレクトリに相対的な名前を決定してみてください。

これを解決する 1 つの方法は、次のように実行時にパスを解決することです。

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

それをいくつか組み合わせてみて、それが役に立たないかどうかを確認してください。

于 2017-01-20T00:46:18.570 に答える