Преобразование строки в ReactComponent

Я знаю его странный вариант использования, но я уже в середине PoC и застрял с проблемой ниже.

У меня есть X jsx файлы в каталоге autoGenerated (которые переносятся из HTML с использованием библиотеки реагирования на магию). Теперь мне нужно динамически загружать их в мое реагирующее приложение в зависимости от пути. Чтобы быть более понятным, посмотрите на фрагмент кода.

<Route path="*" getComponent={(location, cb) => {
      const componentName = makeComponentName(location.pathname);

      $.get(`/autoGenerated/${componentName}.jsx`, (res) => {
        const element = React.createElement(res);
        cb(null, element);
      })
  }} />
</Route>

Элемент im, загружаемый с сервера, может быть как чистым JSX-содержимым, так и элементом с React.createClass и т. Д. Это зависит от меня, как я передаю свой HTML-код.

В чем собственно проблема? Я не могу преобразовать строку, загруженную из вызова ajax, в реальный компонент. Я также попытался сделать это на стороне компонентов - я имею в виду, что у меня был generalComponent, который внутри загружал контент через ajax (также получая строку), и я пытался передать эту строку как-то для метода рендеринга... это тоже не сработало.

Конечно, статическая загрузка всех компонентов невозможна, потому что их сотни, если не тысячи.

У тебя есть какие-нибудь подсказки?

0 ответов

Другие вопросы по тегам