Я нахожусь в сценарии, когда я знаю, какие данные будут возвращены при выборке в API,
У меня есть следующая функция
const fetchingData = async (url: string, options?: Object): Promise<any> => {
const res = await fetch(url, options);
const data = await res.json();
return data;
};
Эта функция возвращает обещание типа any, но как я могу создать обещание, которое может возвращать независимо от того, какой тип я передаю здесь Promise, чтобы получить типизированный ответ?
Я имел в виду что-то вроде этого примера
interface One{
...
}
interface Two{
...
}
const fetchingData = async (url: string, options?: Object): Promise<One | Two> => {
const res = await fetch(url, options);
const data = await res.json();
return data;
};
но этот подход не совсем хорош, потому что каждый раз, когда вы выбираете другой источник данных, вам придется создавать новый интерфейс и добавлять его во вспомогательную функцию.
Итак, как я могу сделать эту функцию fetchingData более динамичной при возврате типизированного промиса?
Спасибо за вашу помощь