TypeScript-ohjelman luominen API:lla
Alustakaa kääntäjäohjelma ja käyttäkää tyyppitarkistinta
TypeScript-ohjelman luominen API:lla on ilmainen TypeScript Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. 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ä 4 oppituntia.
Mikä Compiler API on?
TypeScript tarjoaa pääsyn kääntäjän sisäisiin toimintoihin typescript-npm-paketin kautta. Voitte luoda ohjelmia, tutkia tyyppitarkistinta ja analysoida lähdetiedostoja ohjelmallisesti.
import ts from "typescript";
// Use ts.createProgram to starttypescript-paketin asentaminen
Asentakaa TypeScript tavalliseksi riippuvuudeksi, ei ainoastaan kehitysriippuvuudeksi, kun käytätte Compiler APIa työkaluissanne.
npm install typescript
# Also install types if needed
npm install --save-dev @types/nodeOhjelman luominen
ts.createProgram vastaanottaa taulukon lähtötiedostojen polkuja ja kääntäjän asetuksia sekä palauttaa Program-objektin.
import ts from "typescript";
const program = ts.createProgram(["src/index.ts"], {
target: ts.ScriptTarget.ES2020,
module: ts.ModuleKind.CommonJS,
strict: true,
});Lähdetiedostojen käyttäminen
Käyttäkää program.getSourceFiles()-metodia kaikkien käännökseen kuuluvien tiedostojen hakemiseen tai getSourceFile-metodia tietyn polun hakemiseen.
const sourceFiles = program.getSourceFiles();
sourceFiles.forEach(sf => {
if (!sf.isDeclarationFile) {
console.log(sf.fileName);
}
});Tyyppitarkistimen hakeminen
Tyyppitarkistin on TypeScript-analyysin ydin. Hakekaa se metodilla program.getTypeChecker().
const checker = program.getTypeChecker();
// Now use checker to resolve types, symbols, etc.Diagnostiikan lukeminen
Hakekaa kääntäjän diagnostiikka eli virheet ja varoitukset, jotta voitte toteuttaa mukautettuja validointityökaluja.
const diagnostics = ts.getPreEmitDiagnostics(program);
diagnostics.forEach(d => {
const msg = ts.flattenDiagnosticMessageText(d.messageText, "
");
console.log(msg);
});tsconfig.json-tiedoston lukeminen
Käyttäkää metodeja ts.readConfigFile ja ts.parseJsonConfigFileContent kääntäjän asetusten lataamiseen tsconfig-tiedostosta.
const cfgFile = ts.readConfigFile("tsconfig.json", ts.sys.readFile);
const parsed = ts.parseJsonConfigFileContent(
cfgFile.config,
ts.sys,
process.cwd()
);
const program2 = ts.createProgram(parsed.fileNames, parsed.options);Symbolien ratkaiseminen
Tyyppitarkistin voi ratkaista symbolit — ilmoituksiin viittaavat nimet — ja selvittää, mihin tietty tunniste viittaa.
const sf = program.getSourceFile("src/index.ts")!;
ts.forEachChild(sf, node => {
if (ts.isVariableStatement(node)) {
const symbol = checker.getSymbolAtLocation(
node.declarationList.declarations[0].name
);
console.log(symbol?.getName());
}
});Tulosteen tuottaminen
Kutsukaa metodia program.emit() JavaScript- ja deklarointitiedostojen tuottamiseen samalla tavalla kuin suorittamalla tsc.
const emitResult = program.emit();
const exitCode = emitResult.emitSkipped ? 1 : 0;
process.exit(exitCode);Inkrementaaliset ohjelmat
Käyttäkää ts.createIncrementalProgram-metodia toistuvan analyysin nopeuttamiseen hyödyntämällä aiempaa koontitilaa uudelleen.
// Incremental compilation tracks which files changed
// to avoid reprocessing unchanged filesKertaus: Compiler API:n perusteet
TypeScriptin Compiler API:n avulla voitte luoda ohjelmia, tutkia lähdetiedostoja, kysellä tyyppejä tarkistimen kautta ja tuottaa JavaScriptiä — kaikki Node.js-koodista käsin.
Pikatarkistus
Mikä metodi palauttaa ohjelman TypeScript-tyyppitarkistimen?
Mitä opitte
TypeScriptin Compiler API:n käyttö alkaa kutsulla ts.createProgram. Ohjelmasta voitte käyttää lähdetiedostoja ja tyyppitarkistinta, hakea diagnostiikkaa ja tuottaa tulostetta — tämä muodostaa perustan linttereiden, koodigeneraattoreiden ja analyysityökalujen rakentamiselle.
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 ”TypeScript-ohjelman luominen API:lla” ilmainen?
Kyllä – oppitunnin ”TypeScript-ohjelman luominen API:lla” 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ä 4 oppituntia.
Mitä opin oppitunnilla ”TypeScript-ohjelman luominen API:lla”?
Alustakaa kääntäjäohjelma ja käyttäkää tyyppitarkistinta 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 1/4.
Kuinka kauan ”TypeScript-ohjelman luominen API:lla”-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
- TypeScript-ohjelman luominen API:lla
- AST:n läpikäynti visitoreilla
- Omat muuntimet ja koodin generointi
- Yksinkertaisen linttaustyökalun rakentaminen