2016-06-13 3 views
2

メソッドをレンダリング反応させオブジェクト/ハッシュ は、「子供」と「コンテンツ」キーを含むオブジェクトの集合です。 '子'キーの値は配列です。 'コンテンツ'キーの値は文字列かboolかintなどです。使用は、内部次のコードは、「の」を指す「予期しないトークン」のエラーで失敗する

JSX関連のエラーが表示されたら教えてください。

ありがとうございました。

答えて

2

jsxでできることとできないことについてのドキュメントを見つけるのは簡単ではありませんが、これはあなたができないことの1つです。あなたの場所に、より複雑なコードを実行したい場合は、機能に移動し、代わりにそこに関数を呼び出す:

export default React.createClass({ 
    renderList(nodes) { 
    const list = []; 
    for (const k in nodes){ 
     let val = nodes[k]; 
     let children = val.children; 
     let content = val.content; 
     list.push(<li key={k} id={k} content={content} />); 
    } 

    return list; 
    } 
    render() { 
    let nodes = JSON.parse(this.props.nodes) 
    return (
     <ol> 
     { this.renderList(nodes) } 
     </ol> 
    ); 
    } 
}); 
+0

はありがとうのようなものを行うことができます!私は質問を投稿した後、React JSXの質問の中のループに出くわしました。しかし、呼び出されたメソッドがDOM要素またはReact要素を返す限り、ロジックを移動するだけで済むので、私はそれを使用します。もう一度ありがとう。あなたの答えを受け入れる。 – user3213604

0

をそれとも、この

{nodes.map(function(object, i){ 
    return <li key={object} id={object} content={object.content} />; 
})} 
関連する問題