在导入和使用模块之后,react本机选择器:
import {Picker} from '@react-native-picker/picker';
<Picker
selectedValue={this.state.language}
style={{height: 50, width: 100}}
onValueChange={(itemValue, itemIndex) =>
this.setState({language: itemValue})
}>
<Picker.Item label="Java" value="java" />
<Picker.Item label="JavaScript" value="js" />
</Picker> 我得到以下错误:
Invariant Violation: Tried to register two views with the same name RNCAndroidDropdownPicker这里出了什么问题?
发布于 2020-12-27 14:39:46
要消除这种情况,请执行以下操作:
由于错误是关于以相同的名称注册两个视图,所以以这种方式声明您的Picker:
import { Picker as SelectPicker } from '@react-native-picker/picker';而不是import { Picker } from '@react-native-picker/picker';
并实施如下:
<SelectPicker
selectedValue={this.state.language}
style={{ height: 50, width: 100 }}
onValueChange={(itemValue, itemIndex) =>
this.setState({ language: itemValue })
}>
<SelectPicker.Item label="Java" value="java" />
<SelectPicker.Item label="JavaScript" value="js" />
</SelectPicker>如果以上解决方案不起作用,请执行以下操作
$ npm uninstall --save-dev @react-native-picker/picker
$ npm i @react-native-picker/picker --save
$ cd android
$ ./gradlew clean
$ cd ..
$ react-native run-android更新:
这就是native-base的问题所在。卸载native-base并按以下方式重新安装:
$ npm uninstall native-base --save
$ npm install native-base --save这个问题已在native-base的最新版本中得到修正。
发布于 2021-11-25 08:54:27
只需将native-base更新为最新版本,错误就会得到解决。
发布于 2021-07-01 05:18:09
这个问题的原因,
项目中使用的内部包依赖于@react-native-community/picker。我使用的是native-base:2.15.2,它依赖于@react-native-picker/picker。因此,@react-native-community/picker和@react-native-picker/picker之间存在着冲突。
我是如何找到事业的
在package-lock.json文件中搜索picker并找到上面给出的两个相关包。
溶液
我选择了一个旧版本的native-base:2.13.12,它不依赖于@react-native-picker/picker。
为什么我决定选择一个不同版本的native-base: ?
Picker。@react-native-community/picker提供的。我希望它能提供更好的洞察力。
干杯!
https://stackoverflow.com/questions/65466440
复制相似问题