Стек синтетических сцен (история) с 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);