防止卸载反应导航堆栈导航器屏幕

时间:2019-06-21 14:01:45

标签: react-native react-navigation

我有屏幕A(仪表板)和屏幕B(详细信息)。

单击仪表板中的按钮时,将导航至详细信息。这是通过react-navigation(v1.5)堆栈路由器完成的。当您向后浏览时,详细信息屏幕将被卸载,然后返回到仪表板。

在向后导航时是否可以保持详细信息屏幕的固定状态?

1 个答案:

答案 0 :(得分:0)

尝试使用最新的react-navigation v3。这样,stackNavigator将不会在导航期间卸载组件。例子

import React from 'react';
import { Button, View, Text } from 'react-native';
import { createStackNavigator, createAppContainer } from 'react-navigation';

class HomeScreen extends React.Component {
  render() {
    return (
      <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
        <Text>Home Screen</Text>
        <Button
          title="Go to Details"
          onPress={() => this.props.navigation.navigate('Details')}
        />
      </View>
    );
  }
}