首页 > 解决方案 > TypeOrm + Sqlite 仅在开发中有效 [React Native + Expo]

问题描述

在开发过程中,应用程序数据库运行良好,但是当我生成 APK 时它无法正常工作,我无法使用该数据库。

标签: react-nativesqliteexpotypeorm

解决方案


我发现了 jbenzshawel 的这个答案

1º:yarn add metro-minify-terser

2º:更新 Metro 配置以保留类名和文件名。将以下内容添加到 metro.config.js 转换器:

minifierConfig: {
    ecma: 8,
    keep_classnames: true,
    keep_fnames: true,
    module: true,
    mangle: {
        module: true,
        keep_classnames: true,
        keep_fnames: true,
    },
 },

因此,如果您需要创建metro.config.js添加以下内容:

const { getDefaultConfig } = require('expo/metro-config');

const config = getDefaultConfig(__dirname);

config.transformer.minifierPath = 'metro-minify-terser';
config.transformer.minifierConfig = {
    ecma: 8,
    keep_classnames: true,
    keep_fnames: true,
    module: true,
    mangle: {
        module: true,
        keep_classnames: true,
        keep_fnames: true,
    },
};

module.exports = config;


推荐阅读