我搞砸了反應,試圖解析和呈現json對象。現在,我只是用一個硬編碼的對象進行測試,而不是通過ajax調用。React.js this.props.data.map()不是函數
<script type="text/jsx">
var Person = React.createClass({
render: function() {
return (
<div>
<p className="personName"></p>
<p className="personSA1"></p>
<p className="personSA2"></p>
<p className="zip"></p>
<p className="state"></p>
<p className="country"></p>
</div>
);
}
});
var PersonDiv = React.createClass({
render: function() {
var personNodes = this.props.data.map(function(personData){
return (
<Person
personName={personData.person.firstname}
personSA1={personData.person.street1}
personSA2={personData.person.street2}
zip={personData.person.zip}
state={personData.person.state}
country={personData.person.country}>
</Person>
)
});
return (
<div>
{personNodes}
</div>
);
}
});
React.render(
<PersonDiv data={data} />,
document.getElementById('jsonData')
);
我設置數據變量與
<script>
var data = "[" + '<%=data%>' + "]";
</script>
該數據對象是一個我要創建一個portlet的Java端。我知道json是有效的,因爲我可以使用JSON.parse(json)來解析和遍歷字符串,但是我一直得到map()不是函數。
將'console.log()'放在'this.props ...'之前會發生什麼? – 2015-02-10 15:04:35