2016-11-15 2 views
3

Я использую React JS + webpack. Общий случай, который мне нужно решить, - динамически загружать компоненты React, которые не были связаны с основным приложением. Вид подключаемых компонентов, которые могут быть разработаны независимо от основного приложения, а затем загружены приложения динамически, без переустановки всего приложения.Загрузка React JS-компонента из внешнего скрипта в «время выполнения»

Особый случай ниже.

Я два полностью отделенные модули (т.е. построены с использованием различных package.json и webpack.config.js):

  • MainApp
  • Некоторые Component

Мне нужно реализовать следующие поведение:

  1. Страница с MainApp загружен и инициализирован.
  2. MainApp динамический поиск для URL-файла .js, который содержит Component (например, путем предоставления запроса GET на веб-сервер).
  3. MainApp загружает файл .js с Component и включить его на странице, как <script>
  4. MainApp использования загружены Component при визуализации.

Возможно ли такое использование в случае реакции js + webpack?

+0

Запрос GET возвращает скомпилированный компонент? –

+0

Он возвращает действительный файл .js, а не .jsx (если вы говорите об этом). – vbe

+0

Вы когда-нибудь находили решение для этого? – robertwbradford

ответ

0

Похоже, вы спрашиваете, как реагировать на экстерналию. Если да, то вы можете библиотеки как «внешнеположенность» в вашой WebPack - Вот пример: https://github.com/flexicious/react-redux-datagrid/blob/master/config/webpack.config.js

webpackConfig.externals = { 
      "react": "React", 
     "react-dom": "ReactDOM", 
     "flexicious-react-datagrid":"flexiciousNmsp" 
} 

только быстрое примечание flexicious реагирующего-DataGrid является нашей реакция DataGrid компонента - [http://reactdatagrid.com], так что вам не нужно, что в ваших внешних, если вы не используете его

Смежные вопросы