В функции отсутствует конечный оператор возврата, а в тип возвращаемого значения не входит "undefined".
В следующей функции асинхронного ожидания у меня был тип возврата Promise: <any>
, но я хотел исправить этопоэтому я сделал следующее:
export const getMarkets = async (): Promise<IGetMarketsRes> => {
try {
const nomicsUSD = prepHeaders('USD');
const marketUSD = await nomicsUSD.get(exchangeMarketPrices);
const nomicsUSDC = prepHeaders('USDC');
const marketUSDC = await nomicsUSDC.get(exchangeMarketPrices);
const nomicsUSDT = prepHeaders('USDT');
const marketUSDT = await nomicsUSDT.get(exchangeMarketPrices);
console.log('marketUSD', marketUSD);
return {
marketUSD: marketUSD.data,
marketUSDC: marketUSDC.data,
marketUSDT: marketUSDT.data
}
} catch (err) {
console.error(err);
}
}
Однако, это создает вышеуказанную ошибку.

Где вызывается getMarkets
:
export const fetchMarketPrices = (asset: string) => (dispatch: any) => {
dispatch(actionGetMarketPrices);
return getMarkets().then((res) => {
const { marketUSD, marketUSDC, marketUSDT } = res;
const combinedExchanges = marketUSD.concat(marketUSDC).concat(marketUSDT);
const exchangesForAsset = combinedExchanges.filter((marketAsset: IMarketAsset) =>
marketAsset.base === asset);
return dispatch(actionSetMarketPrices(exchangesForAsset));
});
}
Каковы / являются правильные типы для этого синтаксиса Promise<>
?
Я также попробовал это, которое яожидается, что это будет правильный путь, но получил пропущенное возвращение для Promise, но это асинхронная функция ожидания, поэтому возвращение находится в операторе try
:
export const getMarkets = async (): Promise<IGetMarketsRes> => {
