Electronアプリで@mikro-orm/migrationsを使用しています。移行ファイルを作成し、本番モードでデータベースの移行を実行したいと同時に、Electron で asar パッケージを有効にしてアプリの起動速度を向上させたいと考えています。 .
asar パッケージングを有効にしない場合、フォルダー構造は以下のようになり、すべて正常に動作します。
app/node_modules/@mikro-orm
app/node_modules/...
app/migrations/Migration20220224172334.js
asar パッケージングを有効にすると、フォルダー構造は次のようになります。
app.asar // this is a package with all node modules
app.asar.unpacked/migrations/Migration20220224172334.js
その結果、Cannot find module '@mikro-orm/migrations'
while loadMigration20220224172334.js
のようなエラーが発生します。移行スクリプトの内容は次のとおりです。
const { Migration } = require('@mikro-orm/migrations');
class Migration20220224172334 extends Migration {
...
この質問は、Electron 開発者または Mikro ORM 開発者のいずれかに対するものだと思います。
外部JSファイルからasarパッケージ内のノードモジュールをプログラムでロードする方法はありますか?
移行スクリプトを asar にバンドルし、同時に Mikro ORM でそれらを asar パッケージ内で検索することは可能ですか?