#javascript #react-native #fetch
Вопрос:
У меня есть несколько функций для извлечения api и хранения его в массиве. Я пытаюсь имитировать одни и те же результаты возврата для обоих
возвращаемые результаты.статьи
Множество Функций
constructor(props) {
super(props);
this.state = {articles: [], refreshing: true, trending: []};
this.fetchNews = this.fetchNews.bind(this);
}
export async function getNews() {
try {
let articles = await fetch(`${articles_url}?q=${category}${date}`, {
headers: {
'X-API-KEY': api_key,
},
});
let result = await articles.json();
return result.articles;
} catch (error) {
throw error;
}
}
export async function getTrending() {
try {
let articles = await fetch(`${articles_url_trending}?q=${blockchain}`, {
headers: {
'X-API-KEY': api_key,
},
});
let result = await articles.json();
return result.articles;
} catch (error) {
throw error;
}
}
Мой подход:
fetchNews() {
Promise.all([
fetch(
'https://newsapi.org/v2/everything?q=ethereumamp;apiKey=fb54511458d44c91af1f35ce9d5a0f93',
),
fetch(
'https://newsapi.org/v2/top-headlines?q=bitcoinamp;apiKey=fb54511458d44c91af1f35ce9d5a0f93',
),
])
.then(([articles, trending]) => {
return Promise.all([articles.json(), trending.json()]);
})
.then(([articles, trending]) => {
return [articles, trending.articles];
})
.then(([articles, trending]) => {
this.setState({
articles: articles,
trending: trending,
refreshing: false,
});
});
}
Ошибка: ExceptionsManager.js:180 Предупреждение: Ошибка Тип реквизита: Реквизит data
помечен как требуемый Carousel
, но его значение равно undefined
.
Для поддержки данных требуется массив.
The array I need is .articles…