14

Manzara Yığını (geçmiş) Reaktif Yereli Aktarıcı Akışı ile nasıl sentetik olarak tanımlamanın bir yolu var mı? Kullanıcının doğal olarak A –> B –> C'dan nereye gidebildiği bir uygulama olduğunu varsayalım. Doğal davranışla (A -> B -> C) aynı geçmişe sahip olan C sahnesinde uygulamayı başlatmak istiyorum, bu nedenle kullanıcı başlangıçta açılan sahne C'dan B'a geri dönüyor.Reaktif Yerli Aktarıcı Flux ile Sentetik sahne yığını (geçmiş)

DÜZENLEME: Sanırım Redux Persist kullanarak bir şekilde elde edilebilir olmalı, ancak ben bu ilgili issue buldum.

+0

Bu, uygulamanın ilk ekranı olup olmayacağını onaylayabilir misiniz? –

+0

Evet, 'C 'uygulamanın ilk ekranı olurdu. – sealskej

+1

Bu, gezinme yığını ve hemen dizini için hemen bir görünüm sağlayabileceğiniz ex-navigation (navigasyon yığını) ile mümkündür. Yerel yönlendirici akışında tepki olarak böyle bir şey bulunamadı. –

cevap

1

Sahte boş bir ilk sahne ile yapmayı başardım. Bu çok hacky çözümü ve C'den B'ye animasyon hala düzgün çalışmıyor.

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);