Ser ut som Loggfila har en fin modulsystem, men dette betyr erstatte behovet for noe sånt requirejs? Med andre ord, når du kompilere en Loggfila pakken betyr det håndtere alle avhengigheter for deg? Eksempler vil bli verdsatt!
Loggfila pakkehåndtering
kilden bruker Abdullah Jibaly
På andre språk...
Loggfila har ikke en kjøretidsmodul loader. Du vil fortsatt trenger å gi en modul loader å bruke under kjøring, for eksempel krever js. Loggfila støtter genererer Javascript-kode kompatibel med enten commonJS (for node.js scripts) og AMD lastere (f.eks requireJS). For å spesifisere hvilken du vil bruke pass i "--module" bryteren til kompilatoren med enten "amd" eller "commonjs".
Her er hvordan du eksporterer en modul i Loggfila:
export module depModule {
export class A {
}
}
og her er den genererte Javascript-kode med --module amd bryter:
define(["require", "exports"], function(require, exports) {
(function (depModule) {
var A = (function () {
function A() { }
return A;
})();
depModule.A = A;
})(exports.depModule || (exports.depModule = {}));
})
Maskinskrevet manuskript kan avgi kode som vil arbeide med både AMD-kompatible avhengighet laster som requirejs eller commonjs miljøer som Node. Du kan kontrollere dette med --module muligheten til kompilatoren. Kompilatoren selv ikke håndterer avhengigheter under kjøring, det er opp til deg å regne ut, men det gjør forsøk Løs avhengigheter ved kompilering tiden, så det kan gi deg skrive inn informasjon.
Du kan se eksempler på prosjekter som bruker moduler i testkatalogen på CodePlex, denne for eksempel. Utgangen av kompilering disse testprosjekter er JS-filer som vil være last enten med, for eksempel, requirejs (hvis du passerer --module amd) eller Node (hvis du passerer --module commonjs).
Hvis søknaden din vil bestå kun av Loggfila moduler / filer er det mulig å ikke bruke modullaster eller annen avhengighet ledelse. Du må ta med alle avhengigheter med kommentar referanser og bruke --out muligheten til kompilatoren. Eg:
tsc --out compiled.js app.ts
Dette vil sette i compiled.js de genererte js for app.ts og alle dens avhengigheter, inkludert avhengig av avhengigheter. Den resulterende fil kan da inngå direkte i HTML-filen med skriptmerket. Det kan også minified. Modul lasting på runtime støttes ikke