首页 > 解决方案 > 在反应本机功能组件中无法从 headerRight 访问功能

问题描述

当我尝试访问 react-native 中 headerRight 中的函数时,它会抛出一个错误,提示 toggleModalis 不是函数。(在 'toggleReport()' 中,'toggleModal' 未定义)

function ViewDiscussion(props) {
  const { currentUser, options } = props;
  const [isModalVisible, setModalVisible] = useState(false);

  useLayoutEffect(() => {
    props.navigation.setOptions({
      headerRight: () => (
        <View style={{ flexDirection: "row", paddingRight: 15 }}>
          <Icon
            name="alert-circle-outline"
            type="ionicon"
            size={30}
            color="#000"
            onPress={() => toggleModal()}
          />
        </View>
      ),
    });
  }, []);


  const toggleModal = () => {
    setModalVisible(!isModalVisible);
  };

  return (
    <ScrollView style={styles.container}>
        <Modal isVisible={isModalVisible}>
          <Text>Hello</Text>
        </Modal>
    </ScrollView>
  );
}

标签: react-native

解决方案


推荐阅读