TypeScript Academy · Oppitunti

Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset

Kirjoittakaa ambient-määrittelyjä .d.ts-tiedostoihin globaalien arvojen ja moduulien kuvaamiseksi sekä asentakaa ja käyttäkää kolmannen osapuolen tyypityksiä turvallisesti.

Oppitunti 2/310 vaihetta

Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset on ilmainen TypeScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 2/3. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu TypeScript Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. TypeScript Academy-kurssilla on yhteensä 3 oppituntia.

Johdanto

Tavoite: Kuvailkaa ulkoista JavaScriptiä ambient-määrityksillä .d.ts-tiedostoissa ja käyttäkää kolmannen osapuolen tyyppimäärityksiä kirjastoille, joilta tyypit puuttuvat.

Globaalit määritykset

globals.d.ts: Määritelkää globaalit ja laajentakaa ambient-rajapintoja (esimerkiksi Window) ilman JavaScriptin tuottamista.

// file: globals.d.ts
// Declare global variables and interfaces
declare const VERSION: string;
declare interface Window {
  appReady?: boolean;
}

Vastaanottajalla varustetun lambdan perusteet

  • Vastaanottaja = lambdan sisällä käytettävä builder-olio.
  • Selkeämmät kutsut: item("Tea") builder.item-kutsun sijaan.
  • Pidä nimet lyhyinä ja toiminnot selkeinä.

Moduulimääritykset

declare module kuvaa paketin, joka ei toimita tyyppimäärityksiä. Nyt import { coolify } tarkistetaan tyyppien osalta oikein.

// file: cool-lib.d.ts
// Provide types for an untyped JS module
declare module "cool-lib" {
  export function coolify(s: string): string;
  export const version: string;
}

Moduulin laajennus

Moduulin laajennuksella laajennetaan asennettuja tyyppimäärityksiä, esimerkiksi lisäämällä mukautettu ominaisuus olemassa olevaan rajapintaan.

// file: react-augment.d.ts
// Extend an existing module (augmentation)
declare module "react" {
  interface HTMLAttributes<T> {
    dataTestId?: string;
  }
}

Kolmannen osapuolen tyyppimääritykset

Suosikaa DefinitelyTypedin @types/-paketteja, kun kirjasto ei toimita omia tyyppejään. Ne lisäävät koontiinne ainoastaan .d.ts-tiedostoja.

// install: npm i -D @types/lodash
// usage:
import _ from "lodash";
const r = _.chunk([1,2,3,4], 2);

Vinkkejä ja resoluutio

Vinkkejä:

  • Sijoittakaa .d.ts-tiedostot hakemistoon src/ tai sisällyttäkää ne tsconfig.json-asetuksilla (include/typeRoots/types).
  • Laajentakaa tyyppimäärityksiä moduulin laajennuksella ja välttäkää node_modules-hakemiston muokkaamista.
  • Välttäkää liian laajaa any-tyyppiä; määrittäkää mahdollisimman suppeat ja täsmälliset rakenteet.

Ambient-määritysten tarkistus

Pikatarkistus: Mihin ambient-määritystä käytetään?

Kertaus

Kertaus: Käyttäkää .d.ts-tiedostoja globaaleille määrityksille ja moduuleille, suosikaa yhteisön tyyppimäärityksissä @types-paketteja ja laajentakaa niitä turvallisesti moduulin laajennuksella.

Kertaus

Kertaus: Käyttäkää lohkoittain tyypitettyjä vastaanottajia, lisätkää @DslMarker näkyvyysalueiden turvallisuuden varmistamiseksi ja palauttakaa muuttumaton malli selkeää käyttöä varten.

Aloita maksutta

Opi TypeScript tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
101
Oppitunnit
352

Usein kysytyt kysymykset

Onko oppitunti ”Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset” ilmainen?

Kyllä – oppitunnin ”Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko TypeScript Academy-kurssin, päivitä CoddyKit PROhon. TypeScript Academy-kurssilla on yhteensä 3 oppituntia.

Mitä opin oppitunnilla ”Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset”?

Kirjoittakaa ambient-määrittelyjä .d.ts-tiedostoihin globaalien arvojen ja moduulien kuvaamiseksi sekä asentakaa ja käyttäkää kolmannen osapuolen tyypityksiä turvallisesti. Harjoittelet TypeScript Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni TypeScript Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin TypeScript Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 2/3.

Kuinka kauan ”Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä TypeScript Academy-oppitunnilla?

Kyllä. Jokainen TypeScript Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. ES-moduulit (nimetyt ja oletusviennit) sekä uudelleenviennit
  2. Ambient-määrittelyt (.d.ts) ja kolmannen osapuolen tyypitykset
  3. Polkumääritykset ja moduulien ratkaiseminen
← Takaisin: TypeScript Academy