Стек синтетических сцен (история) с React Native Router Flux

Есть ли способ, как синтетически определить стек сцены (историю) с React Native Router Flux? Допустим, у меня есть приложение, в котором пользователь может естественным образом перемещаться A –> B –> C, Я хотел бы запустить приложение на сцене C, которая имеет ту же историю, что и естественное поведение (A -> B -> C), поэтому пользователь переходит обратно к B с изначально открытой сцены C,

РЕДАКТИРОВАТЬ: Я думаю, что это должно быть каким-то образом достижимо с помощью Redux Persist, но я нашел эту связанную проблему.

1 ответ

Мне удалось сделать это с фальшивой пустой начальной сценой. Это очень хакерское решение, и анимация от C до B все еще не работает правильно.

import React, {Component} from "react";
import {AppRegistry} from "react-native";
import {Scene, Router, Actions, ActionConst} from "react-native-router-flux";
import A from "./A";
import B from "./B";
import C from "./C";

class App extends React.Component {
  componentDidMount() {
    const params = {
      onBack: () => Actions.b({
        direction: 'fade',
        onBack: () => Actions.a({
          direction: 'fade'
        })
      }),
      duration: 0
    };
    Actions.c(params);
  }

  render() {
    return (
        <Router>
          <Scene key="root" style={{paddingTop: 60}}>
            <Scene key="empty"
                   component={class extends Component{render() {return null}}}
                   />
            <Scene key="a" component={A} title='A' type={ActionConst.RESET}/>
            <Scene key="b" component={B} title='B'/>
            <Scene key="c" component={C} title='C'/>
          </Scene>
        </Router>
    )
  }
}

AppRegistry.registerComponent('untitled', () => App);
Другие вопросы по тегам