使用抽屉导航时,React Native Renaimated 2失败并且ERROR不变量冲突

gc0ot86w  于 2023-02-13  发布在  React
关注(0)|答案(2)|浏览(145)

错误:Reanimated 2无法创建工作面板,可能您忘记添加Reanimated的babel插件了?模块AppRegistry不是已注册的可调用模块(调用runApplication)。导致错误的常见原因是应用程序条目文件路径不正确。当JS包损坏或加载React Native时出现早期初始化错误时,也会发生这种情况。错误常量冲突:模块AppRegistry不是已注册的可调用模块(调用runApplication)。错误的常见原因是应用程序条目文件路径不正确。

xlpyo6sf

xlpyo6sf1#

首先,重生2未能创建一个worklet,也许你忘了添加重生的巴别塔插件?错误
转到项目的根目录,按照以下方式更新 babel.config.js

module.exports = {
      presets: ['module:metro-react-native-babel-preset'],
      plugins: [
        "react-native-reanimated/plugin",
      ],
    };

关于第二个错误,当我们习惯于直接从react本地指南放置代码时,我们必须更改react的导入方式,将此**import * 更改为React from 'react';从“react”导入React;**这将删除ERROR固定变量冲突错误。

jrcvhitl

jrcvhitl2#

这对我来说终于起作用了。MainApplication.java从这个文件https://github.com/software-mansion-labs/reanimated-2-playground/blob/master/android/app/src/main/java/com/reanimated2playground/MainApplication.java在www.example.com中添加几行
任何缓存清理,复活巴别塔插件设置建议没有帮助。
添加此导入。

import com.facebook.react.bridge.JSIModulePackage;
import com.swmansion.reanimated.ReanimatedJSIModulePackage;

另外,在ReactNativeHostWrapper中添加此方法

protected JSIModulePackage getJSIModulePackage() {
          return new ReanimatedJSIModulePackage();
        }

最后删除package-lock.json,重新安装node_modules,清理npm/yarn缓存。

相关问题