Javascript 如何将onPress中的两个事件与react native一起使用?
我想使用UploadB函数和setModalVisible(!modalVisible) 我试过这个,但不管用Javascript 如何将onPress中的两个事件与react native一起使用?,javascript,node.js,reactjs,react-native,Javascript,Node.js,Reactjs,React Native,我想使用UploadB函数和setModalVisible(!modalVisible) 我试过这个,但不管用 const UploadB = useCallback(() => { dispatch({ type: ADD_POST_REQUEST, info:{foodname, ingre1, ingre2, ingre3, recipe}, }), navigation.navigate('Main');
const UploadB = useCallback(() => {
dispatch({
type: ADD_POST_REQUEST,
info:{foodname, ingre1, ingre2, ingre3, recipe},
}),
navigation.navigate('Main');
}, [foodname, ingre1, ingre2, ingre3, recipe]);
<Pressable
style={[styles.button, styles.buttonClose]}
onPress={ UploadB, () => setModalVisible(!modalVisible) }
>
const UploadB=useCallback(()=>{
派遣({
类型:添加后请求,
信息:{foodname,ingre1,ingre2,ingre3,recipe},
}),
导航。导航('Main');
},[foodname,ingre1,ingre2,ingre3,菜谱];
setModalVisible(!modalVisible)}
>
我如何修复我的代码???您只能将一个函数分配到按下的
onPress
。您总是可以创建一个函数来完成您需要的一切,包括调用UploadB和切换modals可见性
const press = useCallback(() => {
UploadB()
setModalVisible(visible => !visible)
}, [UploadB]);
<Pressable
style={[styles.button, styles.buttonClose]}
onPress={press}
/>
const press=useCallback(()=>{
上传b()
setModalVisible(可见=>!可见)
},[UploadB]);
要将modalVisibile作为press的依赖项删除,或删除依赖于状态本身的任何状态设置器,可以将函数传递给状态设置器(setModalVisible
),该状态设置器将当前值作为其第一个参数并返回新值