Сейчас мой код извлекает JSON из файла, вместо этого я пытаюсь получить данные из API, успешно распечатал массив из API на консоль, однако при попытке использовать Функция .map для данных, которые я извлек, я получаю сообщение об ошибке, в котором говорится, что переменная, содержащая мой массив, неопознана.
Рабочий код, который печатает массив в консоль:
import React from 'react';
import { MDBDataTable } from 'mdbreact';
import API_Data from '../myJSON_Data.json';
const DatatablePage = () => {
fetch('https://api')
.then((response) => {
return response.json();
})
.then((data) => {
console.log(data);
});
const data = {
columns: [
{
label: 'Name',
field: 'name',
sort: 'asc',
width: 150
}
],
rows: API_Data.map(API_Data => {
return {
state: API_Data.name
}
})
};
return (
<div>
<div>
<div>
<div>
<h1>Data from API</h1>
<MDBDataTable
striped
bordered
hover
data={data}
/>
</div>
</div>
</div>
</div>
);
}
export default DatatablePage;
Что у меня есть пробовал:
import React from 'react';
import { MDBDataTable } from 'mdbreact';
const DatatablePage = () => {
var apiData;
fetch('https://api')
.then((response) => {
return response.json();
})
.then((data) => {
console.log(data);
apiData = data;
});
const data = {
columns: [
{
label: 'Name',
field: 'name',
sort: 'asc',
width: 150
}
],
rows: apiData.map(apiData => {
return {
state: apiData.name
}
})
};
return (
<div>
<div>
<div>
<div>
<h1>Data from API</h1>
<MDBDataTable
striped
bordered
hover
data={data}
/>
</div>
</div>
</div>
</div>
);
}
export default DatatablePage;