Я использую выборку в разных компонентах:
fetch(url)
.then(result => {
if (!result.ok) {
throw new Error("HTTP error " + result.status)
}
return result.json()
})
.then(result => {
this.setState({
data: result,
})
})
.catch(error => {})
Но json данные имеют другую структуру:
state = {
data: [],
}
и
state = {
data: {
items: [],
}
}
Я хочу чтобы сделать один функциональный компонент многократного использования для обеих структур. Как его создать, если это возможно? Я пробовал использовать это
export function getList(url) {
fetch(url)
.then(result => {
if (!result.ok) {
throw new Error("HTTP error " + result.status)
}
return result.json()
})
.then(result => {
return result
})
.catch(error => {})
}
С одним и тем же вызовом для обоих
this.setState({
data: getList(url),
})
Но получил ошибку Cannot read property 'map' of undefined