2017-03-03 3 views
1

: Ich bin zu reagieren und ich habe diesen Code ein:Reagieren: unerwartete Token Rückkehr

render() { 
     return (
      <div> 
       <form> 
        <input type="text" name="texte" value={this.state.value} onChange={this.handleChange} /> 
        <input type="submit" value="Valider" onClick={this.update} /> 
       </form> 
       var list = this.state.liste.map(function(elt) { 
        return <li>{elt}</li> 
       }); 
       <ul>{list}</ul> 
      </div> 
     ); 
    } 

Ich habe einen Syntaxfehler:

Unexpected token return <li>{elt}</li> 
       ^

Ich verstehe nicht, warum ... Danke für jede Hilfe!

+0

Wenn die Antwort geholfen Sie bitte sicher, zu akzeptieren, es: https://stackoverflow.com/help/accepted-answer – paqash

Antwort

2

Umstrukturieren der Code wie folgt:

render() { 

var list = this.state.liste.map(function(elt) { 
        return <li>{elt}</li> 
       }); 
     return (
      <div> 
       <form> 
        <input type="text" name="texte" value={this.state.value} onChange={this.handleChange} /> 
        <input type="submit" value="Valider" onClick={this.update} /> 
       </form> 

       <ul>{list}</ul> 
      </div> 
     ); 
    } 

oder

render() { 
     return (
      <div> 
       <form> 
        <input type="text" name="texte" value={this.state.value} onChange={this.handleChange} /> 
        <input type="submit" value="Valider" onClick={this.update} /> 
       </form> 
       <ul>{this.state.liste.map(function(elt) { 
        return <li>{elt}</li> 
       });}</ul> 
      </div> 
     ); 
    } 

Sie können Code innerhalb der JSX Syntax hinzufügen, ohne {}

+0

Vielen Dank für die Erklärung! – Anna

+1

Sie können Code nur als Ausdrücke innerhalb der Klammern setzen. –