React native 在react native中的navigation.goBack()之后重新加载屏幕
我想在使用react native中的navigation.boBack()导航后重新加载屏幕 这是我的密码React native 在react native中的navigation.goBack()之后重新加载屏幕,react-native,React Native,我想在使用react native中的navigation.boBack()导航后重新加载屏幕 这是我的密码 // navigation options static navigationOptions = ({ navigation }) => { const { params = {} } = navigation.state; return { headerTitle: "Comment", headerTitleStyle: {
// navigation options
static navigationOptions = ({ navigation }) => {
const { params = {} } = navigation.state;
return {
headerTitle: "Comment",
headerTitleStyle: {
marginLeft: 0,
width: "100%",
textAlign: "center",
fontWeight: 'bold',
fontFamily: "helvetica",
},
headerStyle: {
paddingLeft: 10,
paddingRight: 10
},
headerLeft: (
<ClickableIcon
source={Close}
height={35}
width={35}
onIconPressed={() => {
navigation.goBack();
}}
/>
),
headerRight: <View />
};
};
//导航选项
静态导航选项=({navigation})=>{
const{params={}}=navigation.state;
返回{
标题:“评论”,
头饰样式:{
marginLeft:0,
宽度:“100%”,
textAlign:“居中”,
fontWeight:'粗体',
fontFamily:“helvetica”,
},
头型:{
paddingLeft:10,
填充右:10
},
左校长:(
{
navigation.goBack();
}}
/>
),
头灯:
};
};
如何实现这一点?您可以在导航到屏幕时将回调函数设置为:
this.props.navigation.navigate('Comment', {
onBack: () => this.refresh()//function to refresh screen,
});
并在评论屏幕中按下后退按钮时调用此返回功能:
headerLeft: (
<ClickableIcon
source={Close}
height={35}
width={35}
onIconPressed={() => {
const reloadLastScreen = navigation.getParam('onBack');
reloadLastScreen();
navigation.goBack();
}}
/>
)
headerLeft:(
{
const reloadLastScreen=navigation.getParam('onBack');
重新加载LastScreen();
navigation.goBack();
}}
/>
)
您可以在导航到屏幕时将回调函数设置为:
this.props.navigation.navigate('Comment', {
onBack: () => this.refresh()//function to refresh screen,
});
并在评论屏幕中按下后退按钮时调用此返回功能:
headerLeft: (
<ClickableIcon
source={Close}
height={35}
width={35}
onIconPressed={() => {
const reloadLastScreen = navigation.getParam('onBack');
reloadLastScreen();
navigation.goBack();
}}
/>
)
headerLeft:(
{
const reloadLastScreen=navigation.getParam('onBack');
重新加载LastScreen();
navigation.goBack();
}}
/>
)
您可以试试这个。当你的屏幕聚焦时,你可以在那里执行任何代码
componentDidMount(){
const{navigation}=this.props;
navigation.addListener('willFocus',()=>{
//专注时做你想做的任何事
});
}
您可以试试这个。当你的屏幕聚焦时,你可以在那里执行任何代码
componentDidMount(){
const{navigation}=this.props;
navigation.addListener('willFocus',()=>{
//专注时做你想做的任何事
});
}
ScreenA中的handleOnNavigateBack
ScreenA中的handleOnNavigateBack
这将在goBack()调用后更新当前组件状态,但不知道如何操作
import { useIsFocused } from "@react-navigation/native";
const isFocused = useIsFocused();
useEffect(() => {}, [isFocused]);
这将在goBack()调用后更新当前组件状态,但不知道如何操作
import { useIsFocused } from "@react-navigation/native";
const isFocused = useIsFocused();
useEffect(() => {}, [isFocused]);
可能的重复可能的重复