Execução dinâmica do TypeScript no navegador

Eu tenho o TypeScript que baixa assincronamente outro 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 a execução do meu aplicativo principal, recebo este módulo como string e tenho que usar a funçãoconvertData de lá.

Então, estou tentando o seguinte:

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

Funciona bem apenas no caso devar path = require ('caminho'); será removido. Caso contrário, o seguinte erro:Erro não capturado (em promessa): o nome do módulo "caminho" ainda não foi carregado para o contexto: _. Use require ([])

Questões:

É bom usar eval () neste caso? (como sabemos que eval é mau)Como estar comrequire ('caminho')? Estou tentando usarRequireJS (http://requirejs.org/docs/node.html#2) mas recebendo o seguinte erro:Erro não capturado: erro de script para "caminho"

Editado

Portanto, para evitar eval (), a seguinte solução foi encontrada:

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

questionAnswers(1)

yourAnswerToTheQuestion