50 votes

Les objets ne sont pas valides en tant qu'enfant de React

Je reçois une erreur ci-dessous. Je peux voir que je dois retourner un tableau au lieu d'un objet. Mais je ne sais vraiment pas comment y remédier. Merci d'avance

Les objets ne sont pas valides en tant qu'enfant de React. Si vous vouliez rendre une collection d'enfants, utilisez plutôt un tableau ou enveloppez l'objet à l'aide de createFragment (objet) à partir des add-ons de React. Vérifiez la méthode de rendu de View .

 constructor(props){
    super(props);
    this.state = {timeElapsed: null};
  }

startStopButton(){
    return <TouchableHighlight underlayColor="gray" onPress={this.handleStartPress.bind(this)}>
        <Text>Start</Text>
      </TouchableHighlight>
  }

handleStartPress(){
      var startTime = new Date();




      setInterval(()=>{
        this.setState({timeElapsed: new Date()})
      }, 1000);
  }
render(){
return(
  <View style={styles.container}>
    <View style={[styles.header]}>
      <View style={[styles.timerContainer, this.borderColor('#ff6666')]}>
        {this.state.timeElapsed}
      </View>
      <View style={[styles.buttonsContainer, this.borderColor('#558000')]}>
        {this.startStopButton()}
        {this.lapButton()}
      </View>
    </View>
  </View>
);


}
 

58voto

Emilio Rodriguez Points 4377

timeElapsed est un objet, React ne sait pas comment rendre ceci:

   <View style={[styles.timerContainer, this.borderColor('#ff6666')]}>
    {this.state.timeElapsed}
  </View>
 

Essayez de changer this.state.timeElapsed pour une chaîne comme par exemple:

   <View style={[styles.timerContainer, this.borderColor('#ff6666')]}>
    {this.state.timeElapsed.toString()}
  </View>
 

1voto

Manindra Gautam Points 102
 <Note note={
 <p>{(new Date(updated_at)).toString()}</p>
} />
 

Dans ce cas, Note est mon composant enfant et j’ai dépassé la date indiquée ci-dessus et cela a fonctionné pour moi.

Sortie Date de passage pour faire réagir l'enfant

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X