2016-05-18 61 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> 
    ); 
})