反应原生如何在 navigation.goBack() 时重新渲染 routeHeader

时间:2021-07-07 07:55:09

标签: react-native react-router

这是我的标题来自堆栈导航标题

Header on notification

这是没有通知

Header on without notification

这是我的 navigaitonOptions,我使用 mobx 进行全球存储。 当用户在 Notificaitons 页面中导航时,我将 inNotify 设置为 false

DataSource: 'url'

没关系,但是当用户按下 goBack 时,标题不会重新呈现。如何修复它。

谢谢

const navigationOptionsBack = ({ route, navigation }) => { return { headerTitleStyle: { alignSelf: "center" }, title: <TitleSVG />, headerStyle: { shadowColor: "transparent", }, headerLeft: () => ( <Box m={5}> <TouchableOpacity onPress={() => { navigation.goBack(); }} > <Box height={50} width={50} alignItems="center" justifyContent="center" > <BackSVG /> </Box> </TouchableOpacity> </Box> ), headerRight: () => ( <Box m={10}> <TouchableOpacity onPress={() => { NavigationService.navigate("Notificaitons"); }} > <Box height={50} width={50} alignItems="center" justifyContent="center" > {STORE.isNotify == true ? <NotificationSVG /> : <NSVG />} </Box> </TouchableOpacity> </Box> ), }; };

Notifications

mobx STORE

async componentDidMount() {
    this._unsubscribe = this.props.navigation.addListener('focus', () => {   
      Orientation.lockToPortrait(); 
      AuthStore.setPassiveNotify();
     });   
    await AuthStore.setPassiveNotify();
     Orientation.lockToPortrait();
  }

控制台.log

console

0 个答案:

没有答案