【发布时间】:2021-10-24 04:56:59
【问题描述】:
我试图在单击列表项时显示模式。 我最初将状态设置为 false,然后当单击列表项时,它将 setModalVisible 状态设置为 true,并且应该显示模式。 但是,即使状态为真,通过调试检查,模态也不显示。
初始状态
this.state = {
setModalVisible: false,
};
渲染列表项并切换 onPress
renderItem(item) {
return (
<ListItem bottomDivider={true}
onPress={() => this.showModal(item)}>
<View style={{flex: 1}} margin={5}>
<Avatar margin={5} rounded source={{uri: item.logo_url}} />
<View style={{flexDirection: 'row'}}>
<Text margin={50}>{item.rank}</Text>
<Text margin={50} style={styles.cryptoTitle}>
{item.name}
</Text>
<Text style={styles.cryptoPrice}> {'$' + item.price} </Text>
</View>
</View>
</ListItem>
);
}
显示模态函数
showModal(item) {
this.setState({setModalVisible: true});
return (
<View>
<Modal
animationType="slide"
visible={this.state.setModalVisible}
onRequestClose={() => {
this.setState({setModalVisible: false});
}}>
<Text> Modal is Visible !</Text>
</Modal>
</View>
);
}
【问题讨论】:
-
这不是有效的 JavaScript。你在使用像 Vue.js 这样的框架吗?请为您的框架添加标签。
-
@Barmar 使用本机反应,抱歉我标记了
标签: javascript react-native modal-dialog