```
function displayResults(responseJson) {
const gamedata = responseJson.results.map(game => {
return {
name: game.name,
consoles: game.platforms,
metacritc: game.metacritic,
genre: game.genres
};
});
console.log(gamedata);
inputData(gamedata);
}
function platformdata(consoles) {
return consoles.map(system => {
return system.platform.name;
});
}
function inputData(gamedata) {
gamedata.map(input => {
$(`#home-list`).html(`
<h1>${input.name}</h1>
<h5>${input.metacritc}</h5>
<span>${input.system}</span>
`);
});
}
```
Я пытался получить информацию из массива, но не смог получить информацию. Информация для игровых платформ несколько вложена, и я пытался ее выкопать, но безрезультатно.
https://api.rawg.io/api/games?page_size=1
Лучший способ показать информацию более подробно - просто посоветовать кинуть ссылку выше в почтальона, и вы увидите, что я пытаюсь работатьс. В основном это под результатами> платформы> платформа> имя. Когда я добавляю эту информацию в функцию карты, она появляется неопределенно. Запустив его сейчас, они придумали сказать объект запятыми. Я хотел бы, чтобы он просто выдумывал информацию, оставляя запятые. Я не могу понять, как заставить join () перейти в html (). Большое спасибо!
Редактировать: 1) Результаты, которые я хотел бы получить, - это возможность поднять их внутри дерева платформ, но они похоронены. Если я просто использую game.platforms, он производит [объект, объект]. Если я попытаюсь добавить больше строки в gamedata, то получится неопределенное значение.
2) В "gamedata.map (input => {"?
3) Да, я попытался сделать помощникафункция основана на коде, который я нашел в Интернете. Код, который я нашел в Интернете, использовал чрезмерный li и ul
```
function platformnames(platforms) {
return platforms.map(system => {
return '<li>' system.platform.name + '</li>';
});
}
function pullArray(gamedata) {
gamedata.map(function(input) {
let platformNames = input.platforms.map(
system => `<li>${system.platform.name}</li>`
);
$(`#home-container`)
.append(`<li><ul><li>${platformNames}</li></ul></li>`)
.join(' ');
});
}
```
Это сработало, но дало действительно странные результаты.
4) Нет, я добавляю все это к тому же идентификатору, что и одно нажатие.
5) Это я пытаюсь добывать информацию с платформ по API. Он похоронен там, и я не нашел хорошего решения.
function formatParams(params) {
const queryItems = Object.keys(params).map(
key => `${key}=${params[key]}`
);
console.log(queryItems);
return queryItems.join('&');
}
const opts = {
headers: {
'User-Agent': `<ClassProject> / <VER 0.01> <Currently in Alpha testing>`
}
};
function fetchAPI() {
const params = {
...($('.search-param').val() && {
search: $('.search-param').val()
}),
...($('.genre-param').val() && {
genres: $('.genre-param').val()
}),
...($('.platforms-param').val() && {
platforms: $('.platforms-param').val()
}),
...($('.publishers-param').val() && {
publishers: $('.publishers-param').val()
}),
page_size: '1'
};
console.log(params);
const baseURL = 'https://api.rawg.io/api/games';
const queryString = formatParams(params);
let url = `${baseURL}?${queryString}`;
console.log(url);
fetch(`${url}`, opts)
.then(response => response.json())
.then(responseJson => displayResults(responseJson))
.catch(error => {
console.log(`Something went wrong: ${error.message}`);
});
}
function displayResults(responseJson) {
const gamedata = responseJson.results.map(game => {
return {
name: game.name,
consoles: game.platforms,
metacritc: game.metacritic,
genre: game.genres
};
});
console.log(gamedata);
inputData(gamedata);
}
function inputData(gamedata) {
let html = '';
gamedata.forEach(input => {
html += `<h1>${input.name}</h1>`;
html += `<h5>Metacritic: ${input.metacritic ||
'No metacritic rating'}</h5>`;
html += 'Platforms:<br />';
input.consoles.forEach(e => {
html += `<span>${e.platform.name}</span><br />`;
});
html += `<br /><span>System: ${input.system}</span>`;
});
document.getElementById('home-list').innerHTML = html;
}
function pageLoad() {
$(document).ready(function() {
fetchAPI();
});
}
pageLoad();
Так что я близок, благодаря помощи всех здесь. Теперь я возвращаю «Метакритик: метакритический рейтинг отсутствует», или если я удалю его или оставлю неопределенным. Чего мне не хватает?