2016-05-23 3 views
2

Quelqu'un peut-il m'aider en fournissant un exemple d'une liste avec une ligne, qui sur la presse passe un prop via le navigateur contenant le nom de la ligne à un autre composant? Je ne peux pas trouver d'informations à ce sujet, et les exemples et les réponses que je trouve ont tellement de syntaxes différentes qu'il est impossible de savoir quand je suis censé lier une fonction verset simple.Réagir Native View ListView maître dynamique

Répondre

3

Vous essentiellement configurer votre fonction navigate d'accepter des données comme un argument de méthode ListView renderRow:

_navigate(title) { 
    this.props.navigator.push({ 
    name: 'Page2', 
    passProps: { 
     title 
    } 
    }) 
} 

Et puis dans votre méthode de renderRow joindre cette fonction comme ceci:

renderRow (rowData) { 
    return <TouchableOpacity 
      style={{height: 60, backgroundColor: 'red'}} 
      onPress={() => this._navigate(rowData.title)}> 
      <Text>{rowData.title}</Text> 
     </TouchableOpacity> 
} 

J'ai mis en place l'exemple de travail sur RNPlay here.

https://rnplay.org/apps/-tbxbQ

+0

MERCI! fonctionne parfaitement. –

+0

Je n'arrive toujours pas à comprendre pourquoi ma navigation est nulle, Des idées? https://gist.github.com/anonymous/5fa3026514b0930c21633200049f85f6 –

+0

Le navigateur a-t-il été transmis au composant en tant que support? –