Sto esplorando le possibilità di React Native durante lo sviluppo di un'applicazione demo con navigazione personalizzata tra le viste con l'aiuto di Navigator componente - http://facebook.github.io/react-native/docs/navigator.html#contentReact-Native - navigazione personalizzata con componente Navigator
La classe applicazione principale rende navigatore e all'interno renderScene
rendimenti componente passato:
class App extends React.Component {
render() {
return (
<Navigator
initialRoute={{name: 'WelcomeView', component: WelcomeView}}
configureScene={() => {
return Navigator.SceneConfigs.FloatFromRight;
}}
renderScene={(route, navigator) => {
// count the number of func calls
console.log(route, navigator);
if (route.component) {
return React.createElement(route.component, { navigator });
}
}}
/>
);
}
}
Per ora applicazione contiene 2 guardati:
class FeedView extends React.Component {
render() {
return (
<View style={styles.container}>
<Text>
Feed View!
</Text>
</View>
);
}
}
class WelcomeView extends React.Component {
onPressFeed() {
this.props.navigator.push({
name: 'FeedView',
component: FeedView
});
}
render() {
return (
<View style={styles.container}>
<Text style={styles.welcome}>
Welcome View!
</Text>
<Text onPress={this.onPressFeed.bind(this)}>
Go to feed!
</Text>
</View>
);
}
}
Quello che voglio capire è -
vedo in registri che quando si preme "andare a nutrire"
renderScene
è chiamato più volte anche se la vista rende correttamente una volta. È così che funziona l'animazione?index.ios.js:57 Object {name: 'WelcomeView', component: function} index.ios.js:57 Object {name: 'FeedView', component: function} // renders Feed View
fa In generale il mio approccio è conforme al modo Reagire, o si può fare meglio?
Quello che voglio raggiungere è qualcosa di simile a NavigatorIOS
ma senza barra di navigazione (tuttavia alcuni punti di vista avranno il loro barra di navigazione personalizzata).
@ericvicenti questo esempio dovrebbe essere incluso nella [Pagina di navigazione] (https: //facebook.github .io/react-native/docs/navigator.html # contenuto) nei documenti. È più completo e offre un quadro migliore di come utilizzare il componente Navigator nel contesto. – greatwitenorth
Prova semplicemente il tuo esempio, se la scena cambia automaticamente quando si verifica un push del navigatore? Per me il tuo esempio non mostra mai la Visualizzazione feed! testo, quindi mi chiedo se qualcosa è cambiato con le versioni recenti. – Ian