我正在使用react-native-actionsheet库。 当我单击操作表上的一个选项并想要关闭react-native操作表时,我想打开react-native模态。
是关闭操作表的任何方法。
<ActionSheet
ref={o => this.ActionSheet = o}
options={[
(
<TouchableOpacity style={styles.actionTextInline} onPress={() => {
this.openReservationModal(); this.ActionSheet.hide();
}}>
<Icon name="receipt" size={24} style={{ color: '#737373' }} />
</TouchableOpacity>
), (
<TouchableOpacity style={styles.actionTextInline}>
<Icon name="call" size={24} style={{ color: '#737373' }} />
</TouchableOpacity>
), (
<TouchableOpacity style={styles.actionTextInline} onPress={() => { alert("Hello friends !!") }}>
<Icon name="message" size={24} style={{ color: '#737373' }} />
</TouchableOpacity>
)
]}
cancelButtonIndex={2}
destructiveButtonIndex={-1}
styles={{
body: {
flex: 1,
backgroundColor: '#FFFFFF',
borderRadius: 10,
height: 100
},
cancelButtonBox: {
height: 50,
backgroundColor: '#FFFFFF',
paddingLeft: 16,
paddingTop: 16,
alignItems: 'flex-start'
},
buttonBox: {
height: 50,
backgroundColor: '#FFFFFF',
borderRadius: 10,
paddingLeft: 16,
paddingTop: 16,
alignItems: 'flex-start'
},
}}
/>
在上面的代码中,当我执行onPress时,想要调用this.openReservationModal()并关闭操作表。但没有发生任何阻碍。
答案 0 :(得分:0)
这是因为react-native-actionsheet在内部使用DECLARE @ColName varchar(128)
DECLARE @TableName varchar(128)
DECLARE @sql varchar(4000)
SET @ColName ='Code';
SET @TableName ='Code';
SET @sql = 'SELECT ' + @ColName + 'FROM '+ @TableName
EXEC sp_executesql @sql
GO
,而您在onpress上编写的语句是异步运行的,这就是为什么什么也没发生的原因。
现在,您必须对第二条语句使用超时,它将起作用,只需在您的onpress中使用以下代码,它将起作用:
代码:
react native modal
我希望这会有所帮助。...谢谢:)