Ejecución dinámica de TypeScript en el navegador

Tengo TypeScript que descarga asincrónicamente otro módulo TypeScript / javascript:

(function (exports) {
    "use strict";

    var path = require('path');

    exports.convertData = function (data) {
        return "converted " + data;
    }

})(typeof exports === 'undefined' ? this['converter.someConverter'] = {} : exports);

Durante la ejecución de mi aplicación principal, recibo este módulo como cadena y tengo que usar la funciónconvertData desde allí.

Entonces, estoy intentando lo siguiente:

eval(rendererScript);
console.log(exports.convertData("some data"));

Funciona bien solo en caso de quevar ruta = require ('ruta'); será eliminado De lo contrario, el siguiente error:Error no detectado (en promesa): el nombre del módulo "ruta" aún no se ha cargado para el contexto: _. El uso requiere ([])

Preguntas:

¿Está bien usar eval () en este caso? (como sabemos eval es malvado)Como estar conrequire ('ruta')? Estoy tratando de usarRequireJS (http://requirejs.org/docs/node.html#2) pero recibe el siguiente error:Error no detectado: error de script para "ruta"

Editado

Entonces, para evitar eval () se encontró la siguiente solución:

const scriptTag = document.createElement("script");
scriptTag.innerHTML = rendererScript;
document.body.appendChild(scriptTag);
this.m_rendererPlugin = (window as any)[`converter.someConverter`];

Respuestas a la pregunta(1)

Su respuesta a la pregunta