首页 > 解决方案 > 如何在 React Native 中返回上一个抽屉屏幕

问题描述

我是 React Native 的新手。例如,我创建了一个屏幕

  1. 一个屏幕现在在抽屉里我有两个屏幕
  2. D1屏
  3. D2 屏幕现在当我从 D1 屏幕移动到 D2 时。然后我想通过点击默认返回按钮返回 D1 屏幕反应原生我直接进入“A”屏幕。所以意味着我想回到上一个抽屉屏幕。如果可能,请帮助我。谢谢。

这是我的 D2 屏幕代码

import React, {useRef} from 'react';
import {View,TouchableOpacity,Image, StyleSheet} from 'react-native';
import Signature from 'react-native-signature-canvas';
import { Card, Badge, Button, Block, Text } from "../components";
import { theme, mocks } from "../constants";
import { createStackNavigator, HeaderBackButton } from "react-navigation-stack";





const DigSign = () => {
        
  const ref = useRef();

  const handleSignature = (signature) => {
    console.log(signature);
  };

  const handleEmpty = () => {
    console.log('Empty');
  };

  const handleClear = () => {
    console.log('clear success!');
  };

  const handleEnd = () => {
    ref.current.readSignature();
  };
  return (
    
    

    <View style={{flex: 1}}>
       
      <Signature
        ref={ref}
        onEnd={handleEnd}

        onOK={handleSignature}
        onEmpty={handleEmpty}
        onClear={handleClear}
        descriptionText={'Sign here!'}
      />
    </View>
  );
};

export default DigSign;

标签: react-native

解决方案


首先在函数中传递导航参数,然后使用 navigation.goBack() 如下:

export default function SignupScreen({ navigation }) {
return (
<IconButton
            icon="keyboard-backspace"
            size={30}
            style={styles.navButton}
            color="#5b3a70"
            onPress={() => navigation.goBack()}
        />
  );
}

推荐阅读