Użyj maszynopis kompilator od węzła

głosy
10

Jest to dość proste do zrobienia tego z coffeescript.

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

Czy istnieje sposób to zrobić z maszynopisu?

Edit: też pisał na CodePlex

Utwórz 04/10/2012 o 15:39
źródło użytkownik
W innych językach...                            


6 odpowiedzi

głosy
9

Wydaje się, że w dzisiejszych czasach nie jest to prostsze rozwiązanie, można to zrobić:

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

To skutkuje:

"use strict";
var Test = (function () {
    function Test() {
    }
    return Test;
}());
Odpowiedział 04/12/2015 o 12:49
źródło użytkownik

głosy
8

lepiej wymagać może pomóc osiągnąć ten cel.

Pozwala require () plików maszynopisu - no pre-kompilacji potrzebne - i kilka innych formatów (coffeescript, clojurescript, YAML, XML, itd.)

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

Ujawnienie: Napisałem lepiej wymagać.

Odpowiedział 01/11/2012 o 15:55
źródło użytkownik

głosy
8

Ponieważ moduł NPM maszynopis za nie eksportuje dowolnego interfejsu publicznego, jedynym sposobem na to jest obecnie, aby wykonać 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);
                    }
                });

Problem został otwarty do żądania interfejsu publicznego dla modułu maszynopis .

Odpowiedział 04/10/2012 o 16:16
źródło użytkownik

głosy
6

Sprawdzić ten projekt GitHub przez niutech, może konwertować kod maszynopis do kodu JS w locie w przeglądarce , ale myślę, że można być łatwo modyfikowane do pracy w node.js.

Znalazłem go, a ja jestem zbadanie możliwości wsparcia maszynopis w moim życiu, firebug inspirowane edytor kodu .

Odpowiedział 07/10/2012 o 07:44
źródło użytkownik

głosy
4

Nie odpowiadając na pytanie bezpośrednio, ale od Googling dla „run maszynopis bezpośrednio od węzła” przynosi tę stronę StackOverflow, ja figura należy dodać, że jesteś w stanie to zrobić z ts-węzła: https://github.com/TypeStrong / TS węzła

Odpowiedział 15/01/2016 o 17:16
źródło użytkownik

głosy
0

Oficjalna dokumentacja na temat korzystania maszynopis transpiler API do generowania źródła JavaScript z pomocą .TS pliku:

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

Oficjalna dokumentacja na temat korzystania maszynopis kompilatora API skompilować .TS plik lub projekt do TS

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

(Później nie odbiera oryginalne pytanie, ale jest bardzo powszechne na dostęp / modyfikację AST i następnie transpile sprzeciwić język więc może być przydatne)

Odpowiedział 09/05/2018 o 05:52
źródło użytkownik

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