Použití psacím stroji překladač z uzlu

hlasů
10

Je to docela snadné, jak to udělat s kávou-skriptu.

var coffee = require('coffee-script');
coffee.compile(a = 1);
//=> '(function() {\n  var a;\n\n  a = 1;\n\n}).call(this);\n'

Existuje způsob, jak to udělat s psacím stroji?

Edit: také zveřejněny na CodePlex

Položena 04/10/2012 v 15:39
zdroj uživatelem
V jiných jazycích...                            


6 odpovědí

hlasů
9

Zdá se, že v současné době existuje jednodušší řešení, můžete tak učinit:

let ts = require('typescript');
let source = ts.transpileModule('class Test {}', {}).outputText;

To má za následek:

"use strict";
var Test = (function () {
    function Test() {
    }
    return Test;
}());
Odpovězeno 04/12/2015 v 12:49
zdroj uživatelem

hlasů
8

lépe vyžadují mohl pomoci dosáhnout.

To vám umožní require () strojopisem soubory - potřeba žádné pre-kompilace - a spoustu dalších formátů (coffeescript, clojurescript, YAML, XML, atd.)

require('better-require')();
var myModule = require('./mymodule.ts');

Zveřejnění: I napsal lépe vyžadují.

Odpovězeno 01/11/2012 v 15:55
zdroj uživatelem

hlasů
8

Vzhledem k tomu, NPM modul strojopis se neexportuje žádnou veřejnou rozhraní, jediný způsob, jak to udělat, je v současné době provést tscproces.

var exec = require('child_process').exec;

var child = exec('tsc main.ts',
                function(error, stdout, stderr) {
                    console.log('stdout: ' + stdout);
                    console.log('stderr: ' + stderr);
                    if (error !== null) {
                      console.log('exec error: ' + error);
                    }
                });

Problém byl otevřen požádat o veřejné rozhraní pro strojopisu modulu .

Odpovězeno 04/10/2012 v 16:16
zdroj uživatelem

hlasů
6

Zkontrolujte, zda tento GitHub projekt by niutech, to může přeměnit na psacím stroji kód JS kódu za běhu v prohlížeči , ale myslím, že to může být snadno upravena tak, aby práci v node.js.

Zjistil jsem to, když jsem vyšetřuje možnost podpůrného strojopisu ve svém živém, Firebug inspirované editoru kódu .

Odpovězeno 07/10/2012 v 07:44
zdroj uživatelem

hlasů
4

Neodpovídá na otázku přímo, ale protože Googling pro „běh na psacím stroji z uzlu přímo“ vychová tuto stránku StackOverflow, Hádám, bych měl dodat, že jste schopni to udělat s TS-uzlu: https://github.com/TypeStrong / ts-uzel

Odpovězeno 15/01/2016 v 17:16
zdroj uživatelem

hlasů
0

Oficiální dokumentace o tom, jak používat strojopisem transpiler API generovat zdroje JavaScriptu ze .TS souboru:

https://github.com/Microsoft/TypeScript/wiki/Using-the-Compiler-API#user-content-transpiling-a-single-file

Oficiální dokumentace o tom, jak používat strojopisem kompilátor API sestavit Ts soubor nebo projekt TS pro

https://github.com/Microsoft/TypeScript/wiki/Using-the-Compiler-API#user-content-a-minimal-compiler

(Pozdější neodpoví na původní otázku, ale je velmi běžný přístup / modifikaci AST a pak transpile namítat jazyk, takže by to mohlo být užitečné)

Odpovězeno 09/05/2018 v 05:52
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more