Я очень недавно реагирую (создаю свое первое приложение сегодня). Я использую плагин ajax (react-ajax) и до сих пор так хорош на одном JSON-вызове API. Тем не менее, я изо всех сил пытаюсь научиться цитировать, чтобы получить несколько результатов.React JS Ajax Data Loop
var playersUrl = "/public/index.php/players.json";
var PlayerList = React.createClass({
getInitialState: function() {
return {
players: ''
};
},
responseHandler: function(err, data){
this.setState({
players: data.body.data
})
},
render: function() {
return (
React.createElement("ul", {className: "players"},
React.createElement(Ajax, {url: playersUrl, onResponse: this.responseHandler}),
this.state.players.map(function (player) {
return <li>player.id</li>
})
)
)
}
});
ReactDOM.render(<PlayerList />, document.getElementById('player-list'));
В основном ищет, чтобы написать каждый цикл для вывода некоторых HTML заполняется с результатами JSON из обработчика ответа. Огромное спасибо!
{
"data":[
{
"id":"18",
"firstName":"Graham",
"gender":{
"label":"Male",
"value":"male",
"selected":true
},
"preferred_position":{
"label":"Attacking",
"value":"attacking",
"selected":true
},
"dob":{
"date":"1991-03-25 00:00:00.000000",
"timezone_type":3,
"timezone":"UTC"
},
"PassingRatingAvg":2.5,
"ShootingRatingAvg":5,
"DribblingRatingAvg":3,
"PaceRatingAvg":2,
"DefendingRatingAvg":1,
"OverallRating":13.5,
"TotalRating":13
}
],
"meta":{
"pagination":{
"total":1,
"count":1,
"per_page":100,
"current_page":1,
"total_pages":1
}
}
}
Edit: Текущая ошибка "PlayerList.js: 18 Uncaught TypeError: this.state.players.map не является функцией".
Привет, Yuchen, спасибо за ответ, я добавил некоторые из структуры JSON к моему оригинальному сообщению. Благодаря! –
Привет, Юньч, я получаю «Не могу прочитать карту свойств« неопределенного »для функции, которую вы предоставили, какие-либо идеи? –
@GrahamDragonbornWilsdon 'Невозможно прочитать свойство' map 'of undefined' означает, что 'this.state.players'' undefined', вы еще не установили это состояние. – yuchen