<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Типизация API-ответа с дженериком]]></title><description><![CDATA[<pre><code class="language-ts">// Пример: Типизация API-ответа с дженериком
async function fetchData&lt;T&gt;(url: string): Promise&lt;T&gt; {
  const response = await fetch(url);
  if (!response.ok) throw new Error("Ошибка сети");
  return response.json() as Promise&lt;T&gt;;
}

// Использование:
interface User {
  id: number;
  name: string;
}

const loadUsers = async () =&gt; {
  const users = await fetchData&lt;User[]&gt;("https://api.example.com/users");
  console.log(users[0].name); // Автодополнение работает!
};
</code></pre>
]]></description><link>https://forum.exlends.ru/topic/190/tipizaciya-api-otveta-s-dzhenerikom</link><generator>RSS for Node</generator><lastBuildDate>Wed, 24 Jun 2026 08:28:33 GMT</lastBuildDate><atom:link href="https://forum.exlends.ru/topic/190.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 17 Jul 2025 19:09:08 GMT</pubDate><ttl>60</ttl></channel></rss>