React Native - 不变性违规 "RNDateTimePicker"

15
我想在我的应用程序中使用 React Native DateTimePicker 库,但当我尝试选择日期时,出现以下错误:

我正在尝试在我的应用程序中使用 React Native DateTimePicker 库,但是当我尝试选择日期时,会出现以下错误:

Invariant Violation: Invariant Violation: requireNativeComponent: "RNDateTimePicker" was not 
found in the UIManager.

还有其他人遇到这个错误吗?我已经查看了像下面这样的其他帖子,但似乎仍然无法弄清楚。 Git repo

我正在使用expo-可能与此库不兼容。如果是这样,是否有其他任何关于日期/时间库的推荐?


我也尝试过链接,但没有成功


RNDateTimePicker是一个React Native原生模块,需要进行链接,因此您无法在Expo中使用它。 - Pratap Sharma
不确定是podfile问题、链接问题还是我漏掉了其他什么。我使用的是react-native 0.61.5,但我在podfile中导入了RNDatepicker。 - jefelewis
@Pratap Sharma,有没有类似的图书馆可以与Expo一起使用的建议? - will
1
@jefelewis,请告诉我你是否能够解决它。我已经卡在这个问题上大约两天了。 - will
一样,我已经卡在这个问题上三天了,尝试了很多不同的方法和选项。我使用的是@react-native-community/datetimepicker 2.1.0而不是expo。我用它制作的库在模拟器上可以工作,但是我不知道为什么当我安装用它制作的npm库时会出现错误。如果您想查看podfile、package.json或其他文件中是否有任何差异,请查看我的库https://github.com/jefelewis/react-native-ultimate-modal-picker - jefelewis
显示剩余2条评论
5个回答

7

您无法使用react-native-dateTimepicker,因为它需要手动链接本地代码。所以在expo中不可能使用。您可以使用专门为expo制作的expo date time picker:请查看expo-picker。希望能帮到您。


当我尝试查找文档时,你发送的链接似乎只是将我带回了React Native DateTimePicker库。 - will
要安装它,您需要执行expo install @react-native-community/datetime picker而不是npm i。 - Gaurav Roy
@GauravRoy 你确定这个吗?我刚刚安装了最新的(6.*) yarn add @react-native-community/datetimepicker,看起来一切都很正常。此外,@will是对的,它是相同的包,expo只是捆绑了他们已经测试过与特定的expo SDK版本兼容的版本。我还必须指出,我首先使用expo安装它,然后直接用yarn升级了版本。从存储库中的一些提示中,似乎现在内置了一些自动链接? - jave.web
1
问题已解决。所以,不要使用yarn add @react-native-community/datetimepicker,而是使用npx expo install @react-native-community/datetimepicker来安装一个专门针对Expo的库。谢谢。 - Jeffox

3

在安装库后。

执行pod install命令。


2

运行以下命令重新构建您的应用程序:

npx react-native run-ios

1

0

******* 它发生在 RN > .6 *******

首先,运行

npm i @react-native-community/datetimepicker: 2.1.0

它正常工作

之后,运行

npm i @react-native-community/datetimepicker

获取最新版本

它再次正常工作,没有任何问题

祝好运


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