不变量违例:模块“AppRegistry”不是已注册的可调用模块(调用“runApplication”)。等等。

4
我正在使用react-native做一个项目,当我添加抽屉导航时,它开始给我一个错误信息:

不变式违规: 模块AppRegistry不是一个已注册的可调用模块 (调用runApplication)。错误的常见原因是应用程序入口文件路径不正确。 在加载React Native时,这也可能发生JS捆绑包损坏或早期初始化错误。, js引擎:hermes

所以当我搜索解决方法时,我看到了这个答案https://github.com/software-mansion/react-native-reanimated/issues/846#issuecomment-943267584 - 但是当我按照此链接中给出的过程进行操作时,它开始给我两个错误 - 错误:Reanimated 2无法创建worklet,也许您忘记添加Reanimated的Babel插件?,js引擎:hermes和上述错误。我正在使用react-native 0.67,请帮忙解决。

你可以尝试清除整个项目的缓存,然后再试一遍。你可以使用以下命令开始执行:yarn start --reset-cache。如果不行,可以尝试以下步骤:rm -rf ./node_modules yarn cd ios pod deintegrate pod install yarn start --reset-cache - Majid Lotfinia
我在我的项目中没有使用yarn,所有的包都是通过npm下载的。 - MOHAMMAD SIDDIQUE
1
没关系,使用npm代替yarn也可以。 - Majid Lotfinia
3个回答

4

尝试在你的 babel.config.js 文件中添加这行代码;然后再次运行,可能会有帮助。

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

};

它之前是可以工作的,但现在出现了一个警告:“[react-native-gesture-handler] 似乎您正在使用旧的手势组件 API,请查看新的手势系统!” 那么有没有解决这个问题的方法呢? - MOHAMMAD SIDDIQUE
https://dev59.com/icPra4cB1Zd3GeqPe2Or - Dhanesh M
添加上述行后,它显示错误:index.js: 找不到模块'react-native-reanimated/plugin'。 - Vaishnavi Maske

0
在将react-native-reanimated添加到您的项目后,
请将Reanimated的Babel插件添加到您的babel.config.js中:
  module. Exports = {
    presets: [
      ...
     ],
    plugins: [
     ...
    'react-native-reanimated/plugin',
    ],
   };
  • yarn start --reset-cache
  • npm start -- --reset-cache
  • expo start -c

在添加了上述行之后,它显示错误:index.js: 找不到模块'react-native-reanimated/plugin'。 - Vaishnavi Maske

0
对我来说,新的React Native版本0.70似乎与React Native Navigation包不兼容, 在删除导航包并清除缓存后,代码可以正常工作!
yarn remove @react-native-navigation

yarn start --reset-cache

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接