【问题标题】:how can i use two event in onPress with react-native?我如何在 onPress 和 react-native 中使用两个事件?
【发布时间】:2021-02-26 15:27:00
【问题描述】:

我想使用 UploadB 函数和 setModalVisible(!modalVisible)...

我试过了,但是不行

    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) }
        >

如何修复我的代码??

【问题讨论】:

    标签: javascript node.js reactjs react-native


    【解决方案1】:

    您只能将一个函数分配给onPress。您始终可以创建一个函数来满足您的所有需求,包括调用 UploadB 和切换模式可见性。

    const press = useCallback(() => {
      UploadB()
      setModalVisible(visible => !visible)
    }, [UploadB]);
    
    <Pressable
      style={[styles.button, styles.buttonClose]}
      onPress={press}
    />
    

    要删除 modalVisibile 作为 press 的依赖项,或任何依赖于状态本身的状态设置器,您可以将函数传递给状态设置器 (setModalVisible),它将当前值作为其第一个参数并返回新值.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多