Využijte typy nástrojů TypeScript a můžete těžit z výraznějšího kódu, který je také robustnější.
TypeScript je nadmnožina JavaScriptu, která vám umožňuje přidat statické psaní do základny kódu. Díky svému výkonnému typovému systému nabízí TypeScript lepší čitelnost kódu a schopnost zachytit chyby během kompilace.
Jedním z nejpřínosnějších aspektů TypeScriptu jsou jeho vestavěné typy nástrojů, které mohou zjednodušit vaše úsilí při kódování a ušetřit drahocenný čas na vývoj. Podívejte se na tyto typy obslužných programů TypeScript, které musíte znát a které vám mohou pomoci snadno psát typově bezpečný kód.
TypeScript Částečný typ obslužného programu umožňuje nastavit libovolné vlastnosti objektu jako nepovinné. Umožňuje vytvářet objekty s určitými vlastnostmi, které mohou chybět nebo mohou být nedefinované. Vezměte si například:
rozhraní uživatel {
název: tětiva;
stáří: číslo;
e-mailem: tětiva;
}
Za použití Částečný užitkový typ, můžete vytvořit nový typ se všemi vlastnostmi uživatelského rozhraní nastavenými jako volitelné:
typ OptionalUser = Částečné
Nyní můžete vytvořit instanci typu OptionalUser s definovanými pouze některými vlastnostmi:
konst uživatel: OptionalUser = { jméno: "John" };
Můžete se setkat se situacemi, kdy potřebujete vytvořit objekt s určitými volitelnými vlastnostmi. To se může hodit zejména při stavbě forem které mají více polí, protože ne všechna mohou být vyžadována a v takových případech může být částečná užitečnost životně důležitá.
Typ nástroje Pick v TypeScriptu vám může pomoci vygenerovat nový typ výběrem pouze podmnožiny vlastností z existujícího typu. Hodí se, když potřebujete zúžit větší objekt pouze na několik požadovaných vlastností nebo pokud chcete vynutit přísné zadávání vlastností, které potřebujete.
rozhraní uživatel {
umístění: tětiva;
stáří: číslo;
e-mailem: tětiva;
}typ PersonWithoutEmail = Vybrat
'umístění' | 'stáří'>;
konst osoba: PersonWithoutEmail = {
umístění: 'USA',
stáří: 30
};
V tomto příkladu definuje rozhraní s názvem „Uživatel“ tři vlastnosti: e-mail, věk a umístění.
Pomocí Vyberte typ nástroje, můžete z uživatelského rozhraní selektivně extrahovat vlastnosti „umístění“ a „věk“, což vede k vytvoření nového typu s názvem „PersonWithoutEmail“.
Poté můžete vytvořit novou instanci typu „PersonWithoutEmail“ a přiřadit hodnoty pouze vlastnostem „location“ a „age“. Protože vlastnost "email" byla z tohoto typu vynechána, nemůžete ji přiřadit k objektu.
Pomocí typu nástroje Vybrat můžete vytvořit nový typ, který bude obsahovat pouze vlastnosti, které chcete. Díky tomu bude váš kód čitelnější a bude se s ním snadněji pracovat.
Typ pouze pro čtení znamená, že atributy objektu jsou po jeho vytvoření neměnné. Tento typ dlouhodobě zaručuje konzistenci dat objektu, což má za následek plynulejší a bezpečnější zpracování kódu.
rozhraní uživatel {
jméno pouze pro čtení: tětiva;
věk pouze pro čtení: číslo;
e-mail pouze pro čtení: tětiva;
}
Za použití Typ nástroje pouze pro čtení, můžete vytvořit nový typ se všemi vlastnostmi uživatelského rozhraní označenými jako pouze pro čtení:
typ ReadonlyUser = Pouze pro čtení
Hodnoty vlastností můžete zadat při vytváření instance ReadonlyUser::
konst uživatel: ReadonlyUser = {
název: "John",
stáří: 30,
e-mailem: "[email protected]"
};
Když označíte vlastnosti objektu jako pouze pro čtení, pokus o úpravu hodnot těchto vlastností se stane nemožným:
uživatelské.jméno = "Jane";
// Chyba: Nelze přiřadit 'name', protože je to vlastnost pouze pro čtení.
Typ Pouze pro čtení je zvláště důležitý v situacích, kdy se chcete ujistit, že se konkrétní objekt nezmění, ať je na něj odkazováno jakkoli. Pokud máte například objekt, který obsahuje důležitá konfigurační nastavení, měli byste zajistit, aby zůstal nezměněn.
Tento typ zajišťuje, že jsou přítomny všechny základní vlastnosti objektu, zatímco typ Částečný nabízí větší flexibilitu tím, že vám umožňuje zadat podmnožinu vlastností a ostatní ponechat volitelný. To se může ukázat jako výhodné v situacích, kdy některé vlastnosti nemusí být nutné nebo se mohou změnit.
rozhraní uživatel {
název: tětiva;
umístění: číslo;
adresa: tětiva;
}
Pomocí Požadovaný typ utility, je možné vytvořit nový typ, který kombinuje všechny atributy uživatelského rozhraní, přičemž vyžaduje, aby každá z těchto vlastností byla přítomna. Vytvoření instance RequiredUser je možné pouze poté, co byly správně nastaveny všechny její vlastnosti.
konst uživatel: RequiredUser = {
název: "John Doe",
umístění: "USA",
adresa: "Kansas 9745-0622"
};
Využití typu Required utility zajišťuje, že v objektu jsou přítomny všechny požadované vlastnosti.
Typ nástroje Vynechat vám umožňuje vytvořit nový typ vyloučením určitých vlastností z existujícího typu.
rozhraní Osoba {
umístění: tětiva;
stáří: číslo;
e-mailem: tětiva;
}
typ PersonWithoutEmail = Vynechat
'e-mailem'>;
konst osoba: PersonWithoutEmail = { umístění: "USA"; stáří: 30 };
Rozhraní osoby má tři vlastnosti: věk, umístění a e-mail. Typ PersonWithoutEmail používá typ nástroje Omit k zahrnutí všech vlastností objektu Person kromě e-mailu. Poté můžete vytvořit instanci tohoto nového typu, aniž byste zadali hodnotu vlastnosti e-mailu.
Měli byste mít na paměti, že typ nástroje Vynechat sdílí významné podobnosti s typem nástroje Vybrat, protože vám umožňuje navrhnout nový typ pouze pomocí vlastností, které určíte.
Typ nástroje Záznam můžete použít k definování typu objektu, pro který mají klíče a hodnoty konkrétní typ. Jeho definice je:
typ Záznamrozšiřuje klíč žádný, T> = { [P v K]: T;};
To spojuje typ T s hodnotou každého klíče, zatímco K je spojením klíčů libovolného typu. Výsledný objekt má typ vlastnosti P nastavený na T.
Zvažte scénář typu objektu s řetězcovými klíči a číselnými hodnotami. V takovém případě můžete použít Typ nástroje pro záznam tak jako:
typ MyRecord = Záznam<tětiva, číslo>;
konst myObject: MyRecord = {
"foo": 1,
"bar": 2,
"baz": 3,
}
Tento příklad určuje MyRecord jako typ objektu s řetězcovými klíči a číselnými hodnotami. Objekt myObject ztělesňuje příklad tohoto typu s klávesami "foo", "bar" a "baz" přiřazenými k jejich odpovídajícím hodnotám.
Tento článek odhalil obrovskou sílu typů nástrojů TypeScript – mohou být cenným přínosem, pokud jde o zefektivnění vašeho kódu a zrychlení a zefektivnění vývoje. Tyto typy obslužných programů a TypeScript obecně dokážou zázraky zajistit, že váš kód bude vždy bezchybný a bude dodržovat specifické struktury.