2017-03-14 6 views
-2
var PropsChildren = React.createClass({ 
    render: function(){ 
     return 
     <div> 
      { React.Children .map(this.props.children,function(child){ 
       return <a>{child}</a>; 
      })} 
     </div> 
     ; 
    } 
}); 
ReactDOM.render(
    <PropsChildren> 
     <span>Hello </span> 
     <span>Hello</span> 
    </PropsChildren>, 
    document.getElementById('container') 
); 
+0

あなたはスペースを削除し、本当の問題ではないのですが、コードがまだ動作しませReact.Childrenが – grizzthedj

+0

を.map' 'のスペースを持っている、それはエラー「エラースロー:PropsChildren.renderを():有効反応要素(またはヌル)を返す必要があります。未定義、配列またはその他の無効なオブジェクトが返された可能性があります。 \t エラー=新しいエラー(format.replace(/%s/g、function(){ \t ' – ElexiUric

答えて

1

return文の前後に()を追加するのを忘れた。これを修正するには、returnと同じ行でJSXを起動することもできます。

var PropsChildren = React.createClass({ 
    render: function() { 
    return (
     <div> 
     {React.Children.map(this.props.children, function(child) { 
      return <a>{child}</a>; 
     })} 
     </div> 
    ); 
    } 
}); 

ReactDOM.render(
    <PropsChildren> 
    <span>Hello </span> 
    <span>Hello</span> 
    </PropsChildren>, 
    document.getElementById('container') 
); 
関連する問題