Я пытаюсь сгенерировать значение из функции в ячейке для отображения в таблице с помощью response-table v7. Но я все время получаю ошибку, которую не понимаю. Это ошибка:
Error: Cell(...): Nothing was returned from render. This usually means a return statement is missing. Or, to render nothing, return null.
Значение ячейки, которое я указываю, имеет следующий код столбца:
{
Header: 'Runs',
accessor: 'id',
Cell : (e) => {axios.get(`http://localhost:8000/cluster/${e.value}/runs`)
.then(res => {
return res.data['count']
})},
disableSortBy: true,
Filter: SelectColumnFilter,
filter: 'equals',
}
Кажется, я не могу отследить то, что мне не хватает в моем коде или что я делаю не так. Буду признателен за помощь. Спасибо.
Ниже мой пример кода.
const ClustersApp = () => {
const [completeness, setcompleteness] = useState([]);
const [loading, setloading] = useState(false);
const fetchData = async () => {
try {
const url = 'http://localhost:8000/clusters?format=json';
const options = {
method: 'GET',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json;charset=UTF-8',
},
};
const res = await fetch(url, options).then(response => {
return response.json();
});
setcompleteness(res["results"]);
setloading(true);
} catch (e) {
console.log(e)
}
}
useEffect((props) => {
fetchData();
}, []);
const columns = useMemo(
() => [
{
Header: 'Task Name',
accessor: 'name',
disableSortBy: true,
Filter: SelectColumnFilter,
filter: 'equals',
},
{
Header: 'Square',
accessor: 'module.name'
},
{
Header: 'Schedule',
accessor: 'schedules'
},
// this column calls a value from another API
{
Header: 'Runs',
accessor: 'id',
Cell : (e) => {axios.get(`http://localhost/cluster/${e.value}/runs`).then(res => {
return res.data['count']
})},
disableSortBy: true,
Filter: SelectColumnFilter,
filter: 'equals',
}
],
[]
);
return (
<div className="completeness-table">
{loading ? (
<TableContainer columns={columns} data={completeness} />
) :
(
<ReactBootstrap.Spinner animation="border" />
)}
</div>
);
}
export default ClustersApp;