Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

461
Vistas
¿Cómo debo hacer para obtener el texto ts cuando uso la API transpileModule?

Utilizo transpileModule para insertar un campo en Page-data , pero obtengo el resultado es un texto js, pierdo interface Account y opt: string | any ¿Cómo puedo hacer para obtener ts text?

 const ts = require('typescript') const factory = ts.factory const content = ` interface Account { id: number displayName: string version: 1 } Page({ data: { name: 'miser', }, }) Component({ data: { age: 18, }, }) function Component(opt: string | any) {} function Page(opt: any) {} ` const result = ts.transpileModule(content, { compilerOptions: {}, transformers: { before: [visitNodes], }, }) function visitNodes(ctx) { const visitor = node => { if ( ts.isPropertyAssignment(node) && node.name.escapedText === 'data' && node.parent.parent.expression.escapedText === 'Page' ) { const newNode = factory.createPropertyAssignment('haha', factory.createStringLiteral('ok')) node.initializer.properties.push(newNode) } return ts.visitEachChild(node, visitor, ctx) } return sourceFile => ts.visitNode(sourceFile, visitor) } console.log(result.outputText) // Page({ // data: { // name: 'miser', // haha: "ok", // }, // }); // Component({ // data: { // age: 18, // }, // }); // function Component(opt) { } // function Page(opt) { }
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda