Vm2: Suporte TypeScript.

Criado em 12 out. 2020  ·  5Comentários  ·  Fonte: patriksimek/vm2

Olá, algum plano de oferecer suporte ao texto datilografado?
Ou talvez haja alguém que usa o compilador ts personalizado na produção, se quiser compartilhar?

stale

Comentários muito úteis

Você já tentou usar a API do compilador TypeScript ? Ele fornece métodos para transformar o código TypeScript em código JavaScript de forma dinâmica. Já usei isso antes e funciona muito bem.

const {VM} = require('vm2');
const ts = require('typescript');

const vm = new VM();

const res = ts.transpile(`
    let x: number = 3;
    x + 5;
`);

console.log(vm.run(res)); // 8

Todos 5 comentários

Eu definitivamente gostaria de ver isso, já que estava tentando fazer um bot discord que execute código typescript, mas não consegui encontrar outra biblioteca de execução typescript que ofereça suporte ao sandbox e esta é provavelmente a melhor que existe.
EDITAR: parece que esta biblioteca usa https://nodejs.org/api/vm.html nos bastidores, que também não parece oferecer suporte ao typescript.

Você já tentou usar a API do compilador TypeScript ? Ele fornece métodos para transformar o código TypeScript em código JavaScript de forma dinâmica. Já usei isso antes e funciona muito bem.

const {VM} = require('vm2');
const ts = require('typescript');

const vm = new VM();

const res = ts.transpile(`
    let x: number = 3;
    x + 5;
`);

console.log(vm.run(res)); // 8

Ah, por algum motivo eu não pensei em usar em combinação com vm2 lol. Vou tentar isso, obrigado.

Este problema foi marcado automaticamente como obsoleto porque não teve atividades recentes. Ele será fechado se nenhuma outra atividade ocorrer. Obrigado por suas contribuições.

Também deve ser possível definir ts.transpile como compilador.
`` `JS
const {VM} = requer ('vm2');
const ts = require ('typescript');

const vm = nova VM ({compilador: ts.transpile});

console.log (vm.run ( let x: number = 3; x + 5; )); // 8

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

unxcepted picture unxcepted  ·  11Comentários

keyosk picture keyosk  ·  64Comentários

vshymanskyy picture vshymanskyy  ·  8Comentários

wojpawlik picture wojpawlik  ·  4Comentários

ozsay picture ozsay  ·  5Comentários