我在我的电子应用程序中使用了same,我创建了迁移文件并希望在生产模式下运行数据库迁移,同时,我也希望在电子中启用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'时,我得到了类似于Migration20220224172334.js的错误,下面是迁移脚本的内容:
const { Migration } = require('@mikro-orm/migrations');
class Migration20220224172334 extends Migration {
...我认为这个问题要么是电子开发者,要么是Mikro ORM开发者。
发布于 2022-02-24 17:00:54
我们可以修补require路径,使其在开发和生产模式中都能工作。
require(
(
__dirname.includes('asar.unpacked')
? '../../../../app.asar/node_modules/'
: ''
) + '@mikro-orm/migrations'
);https://stackoverflow.com/questions/71253470
复制相似问题