2014-04-15 18 views
17

Come si può compilare TypeScript 1.0 nel browser?Come compilare TypeScript nel browser?

Suppongo che dovrebbe essere come semplice come caricamento dei file JS typescript pertinenti, creando un'istanza della classe giusta (compilatore?) E chiamando un metodo o due.

Questo non richiede alcuno strumento specifico, ma QUALSIASI modo di farlo con questo particolare linguaggio del computer, e quindi è in argomento.

+0

Perché vorresti farlo? Dovresti usare TypeScript solo per lo sviluppo, avere un watcher di file (o avere uno script di compilazione) per compilare il file ts nel file js quando i file vengono cambiati e caricare il js compilato nel browser (sia nello sviluppo che nella produzione). Poiché il compilatore aggiunge un riferimento alla mappa sorgente (compilandolo con l'opzione '--sourcemap') potrai eseguire il debug nel browser del file TypeScript, in modo da ottenere tutto ... –

+3

Per molte ragioni, ma sì per il codice di produzione che non vorresti normalmente. Ma alcuni motivi potrebbero essere la costruzione di un parco giochi come quello su typescriptlang.org, o nella costruzione di un IDE web, o di un compilatore web based, o magari di un compilatore che poi copia i file sui server tramite i servizi cloud. Nel mio caso sto solo cercando un esempio conciso senza il pieno carico di TSC per fare la compilazione di un singolo file. Il mio scenario non era in realtà nel browser, ma in uno script PowerShell che ospitava il motore Chakra JS, ma il modo più semplice per arrivarci era un semplice script basato su browser. – klumsy

+2

Un commento, perché Q è chiuso: stai cercando il metodo transpile() sul modulo esportato predefinito del pacchetto Typescript npm. import * come TS da 'typescript'; TS.transpile (sourceTS) -> restituisce transpiled JS. https://github.com/Microsoft/TypeScript/blob/master/lib/typescript.d.ts#L4548 ​​ – NiloCK

risposta

9

È possibile utilizzare typescript-script: https://github.com/basarat/typescript-script

Tuttavia non fare questo nella produzione in quanto sta per essere lento.

È possibile utilizzare browserify per caricare pacchetti npm nel browser.

+0

Perché non sarebbe sicuro? –

+0

@DavidGiven Non so perché ho pensato che avrebbe servito l'input TypeScript * dall'utente *. Così rimosso. Grazie! – basarat

+3

sembra obsoleto e abbandonato, sei sicuro? – xamiro

Problemi correlati