Lahendatud: faili index.ts ei saa kompileerida '–isolatedModules' all, kuna seda peetakse globaalseks skriptifailiks. Mooduliks muutmiseks lisage impordi-, ekspordi- või tühi lause „ekspordi {}”.

Viimane uuendus: 09/11/2023

See Typescripti probleem, mida täna arutame, on iseloomulik Typescripti disaini ja juurutamise võtmeaspektile – selle koostoimele moodulitega. Üks levinumaid kompileerimisvigu on 'index.ts'i ei saa kompileerida üksuse –isolatedModules alla, kuna seda peetakse globaalseks skriptifailiks. See probleem on sageli põhjustanud laialdast arusaamatust Typescripti kogukonnas skriptimise ja moodulite importimise/eksportimise kohta.

Probleemi demüstifitseerimine

  • Typescripti lipufunktsioon isoleeritudmoodulid nõuab, et iga fail peab olema moodul. See tähendab, et kõik failid peaksid sisaldama impordi- või ekspordiavaldust. Kuid kui Typescript leiab faili, millel see puudub, annab see ülalmainitud vea. See juhtub seetõttu, et Typescript käsitleb selliseid faile skriptina, mitte moodulina.

Lahendused

Sellest luksumisest ülesaamiseks saame võtta paar meedet.

  • Lisage impordi- või ekspordiavaldus. See paneb Typescripti selle moodulina ära tundma.
  • Teise võimalusena, kui pole midagi eksportida või importida, võite lisada tühja ekspordiavalduse, näiteks „ekspordi {}”.
// Adding an Import Statement
import { ModuleName } from "module-location";
// Adding an Export Statement
export { variableOrFunctionName };
// Adding an Empty Export Statement
export {};  

Koodi samm-sammult selgitus

1. Impordi avaldus: Märksõna 'import' abil saame importida mooduli aktiivsesse faili. Ülaltoodud näites ekstraheerisime selle moodulist mooduli nime.

2. Ekspordiaruanne: See märksõna võimaldab meil moodulist eksportida funktsiooni, muutujaid jne. Nii et mõnes teises moodulis saate kasutada käsku "import", et tuua kõik eksporditud praegusesse moodulisse.

3. Tühi ekspordiaruanne: See märksõna ütleb Typescriptile, et tegemist on mooduliga, isegi kui pole midagi eksportida. Lisades 'ekspordi {}', ekspordime tühja objekti.

Teegid, funktsioonid ja muud asjakohased teemad

Masinakirjamooduli süsteem

Moodulid on iga tugeva rakenduse arhitektuuri lahutamatud osad. Need mängivad olulist rolli hästi struktureeritud ja hooldatava koodi loomisel. Need pakuvad kapseldamise kontseptsiooni, mida kasutatakse projekti koodiühikute puhtaks eraldamiseks ja organiseerimiseks.

IsolatedModules lipu roll

See lipp tagab, et iga Typescripti fail edastatakse eraldi, sõltumata ühestki teisest failist, nagu seda teeb Babel oma kompileerimisprotsessis. See lipp on ühilduvuse tagamiseks nõutav, kui kasutate ülekandmiseks Babeli.

Impordi- ja ekspordiavalduste protsessi mõistmine, samuti lipu „isolatedModules” kasutamine on nendes Typescripti koostamise probleemides navigeerimisel suureks abiks.

Seonduvad postitused:

Jäta kommentaar