reactjs - React Native Picker 在更改时关闭模式
问题描述
每次我在我的选择器中选择一个包含在我的模态中的值时,我的模态都会立即关闭。我的选择器列表已正确加载。我认为这与我的 onValueChange 有关。似乎有什么东西在那里触发了重新渲染。
console.log(friend) 向我展示了选择的值。任何想法如何调试它?
const [friend, setFriend] = useState("");
const [modalVisible, setModalVisible] = useState(false);
const [selectedId, setSelectedId] = useState(null);
const allFriendlist = useSelector(
(state) => state.reducer.availableFriendlist
);
const Item = () => (
<View style={styles.formContainer}>
<Modal animationType="slide" transparent={true} visible={modalVisible}>
<View>
<View>
</View>
</View>
<Picker
selectedValue={friend}
onValueChange={(desc) => setFriend(desc)}
>
<Picker.Item label="pick a friend" value="" color="grey" />
{allFriendlist.map((item, index) => {
return (
<Picker.Item
label={item.id}
value={item.id}
key={index}
color="#E9446A"
/>
);
})}
</Picker>
</Modal>
<TouchableOpacity
onPress={() => {
setModalVisible(true);
getDetails(props);
}}
>
<View></View>
</TouchableOpacity>
</View>
);
return (
<View>
<TouchableOpacity>
<Item
item={props}
onPress={() => {
getDetails(props);
setSelectedId(props.ID);
setModalVisible(true);
}}
/>
</TouchableOpacity>
</View>
);
}
解决方案
推荐阅读
- vba - 根据表格上已有的详细信息填写 VBA 表格
- openmdao - pyOptSparseDriver 导入失败
- java - Is there a more easy and more than 6 functional code for this?
- android - What do I need to do to build (parts of) WebRTC for Android (NDK)? It can't find C++ headers
- ruby-on-rails - In Rails 5 having issues with Ransack query and my Strong Parameters
- java - 如何将条件转换为 oracle sql 查询
- symfony - Symfony webpack 再次需要
- python-3.x - 带有 Python 3 VideoCapture 的 OpenCV 3.2 更改了 v4l2 的设置
- google-cloud-platform - 授予 Cloud CDN 访问您的存储桶的权限?
- python-3.x - Tensorflow 中欧几里得距离的计算不在 GPU 上运行