不变性违规:Picker已从React Native中移除。

5

enter image description here

错误 Invariant Violation: Picker 已从 React Native 中移除。 现在可以从 '@react-native-picker/picker' 安装和导入,而不是 'react-native'。
请参见 https://github.com/react-native-picker/picker
错误 Invariant Violation: AppRegistry 模块不是已注册的可调用模块(调用 runApplication)。 出现该错误的常见原因是应用程序入口文件路径不正确。当加载 React Native 时存在早期初始化错误或 JS bundle 损坏时也可能发生此问题。

我正在尝试配置一个现有的 React Native 项目,但我遇到了上述问题。

在项目中我没有使用 Picker,但是仍然显示以上错误。并且已经添加了 @react-native-picker/picker。

3个回答

1

1. 将 patch-package 安装到您的项目中,

将 @react-native-picker/picker 安装到您的项目中,

前往 node_modules\react-native\index.js

替换所有内容

invariant(
      false,
     'DatePickerAndroid has been removed from React Native. ' +
       "It can now be installed and imported from '@react-native- 
     community/datetimepicker' instead of 'react-native'. " +
       'See https://github.com/react-native- 
   datetimepicker/datetimepicker',
      );

或者

invariant(
             false,
          ........ DatePicker ..........
             );

return require('@react-native-picker/picker') 

运行

npx patch-package react-native

重新构建你的应用程序,它就会正常工作。


1

1
在我的情况下,我移除了 @davidgovea/react-native-wheel-datepicker 这个包,因为它使用了旧的依赖,导致了问题。

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