2017-05-12 3 views
0

J'ai un composant simple fonctionnelComment mettre à jour un flux de composants React?

const Hello = (props) => <div>{props.name}</div> 

Comment puis-je fournir un flux de valeurs au paramètre props et faire la mise à jour composant la mode réactive, en consommant le flux? Ainsi, chaque fois que la nouvelle valeur provient du flux, le composant est mis à jour avec cette valeur.

Fondamentalement, je suis à la recherche d'un moyen de rendre le composant manuellement.

+0

Que voulez-vous dire par "* consumer the stream *"? – Chris

+0

@Chris Essayé de l'écrire plus clair. –

+0

Je ne comprends toujours pas votre question. Votre composant sera mis à jour chaque fois que vous fournissez une nouvelle valeur pour 'props.name'. – Chris

Répondre

1

Vous pouvez utiliser deux méthodes de base:

  1. Composant nouveau rendu, que vous avez mentionné
  2. système d'État: https://facebook.github.io/react/docs/state-and-lifecycle.html

La deuxième façon pourrait ressembler à ceci:

const Hello = (props) => <div>{props.name}</div> 
 

 
class Wrapper extends React.Component { 
 
    constructor(props) { 
 
    super(props); 
 
    this.state = { 
 
     name: '' 
 
    }; 
 
    } 
 
    
 
    componentDidMount() { 
 
    source.on('event', name => { 
 
     this.setState({name}); 
 
    }); 
 
    } 
 
    
 
    render() { 
 
    return <Hello name=this.state.name/>; 
 
    } 
 
}

+0

Connaissez-vous un exemple avec les flux? –

+0

source est un analogue de flux ici que vous pouvez écouter des événements pour tout flux fondamentalement flux est une entité produisant un événement – lunochkin

+0

Ok, merci, j'ai trouvé une légère modification sans appeler le 'setState': http://codepen.io/dmitriz/pen/rmvOjQ? editors = 0010 –