2016-05-18 73 views
0

JSX代碼這裏:陣營組件 - 設置頁面標題

class PaperList extends React.Component{ 
    constructor() { 
    super(); 
    this.state = { 
     newsList: [{ 
     title:'title1', 
     content:'content1' 
     },{ 
     title:'title2', 
     content:'content2' 
     }] 
    }; 
    } 
render() { 
var that = this; 
    var lists = this.state.newsList.map(function(news,idx){ 
     return <Paper key={idx} style={paperStyle} zDepth={2}><h2>{that.state.newsList['+idx+'].title}</h2></Paper>; 
    }); 
    return (<div> 
     {lists} 
    </div> 
    ); 
    } 

如果只有that.state.newsList [ '+ IDX'],是沒有問題的。 如何獲得標題?

回答

0

使用Array.map()時,不需要通過索引訪問數組。在您的情況下,news是陣列中當前索引idx處的項目。無需使用this.state.newsList中的idx值查找該項目。下面的代碼應該可以獲得標題。

var lists = this.state.newsList.map(function(news, idx) { 
    return (
     <Paper key={idx} style={paperStyle} zDepth={2}> 
     <h2>{news.title}</h2> 
     </Paper> 
    ); 
})