2017-01-11 4 views
2

В моем веб-приложении у меня есть ReactJS, связанный вместе с моим кодом и включенный как в html-страницу. У нас также есть набор модулей, которые мы загружаем с помощью requireJs. И один из этих модулей построен с использованием WebPack как цель umd.Игнорировать и пропустить requirejs зависимость

Всякий раз, когда клиент пытается загрузить модуль с помощью requireJS, requirejs также пытается загрузить React и ReactDOM из этой строки в модуле:

define(["React", "ReactDOM"], factory);

Но я не хочу требовать, чтобы DONWLOAD React и ReactDOM, поскольку он уже загружен. Как я могу позволить requireJS знать, что этот модуль уже загружен, и нет необходимости загружать его снова?

+0

как вы можете загрузить что-то снова, если оно уже загружено ??? Вы просто получаете ссылку на модуль, если модуль имеет возвращаемое значение! Что вы имеете в виду при загрузке? – Legends

+0

Ответ в первом предложении «В моем веб-приложении у меня есть ReactJS, связанный вместе с моим кодом и включенным как в html-страницу». Я не загружаю реакцию, используя require – vmg

+0

Мне не жалко ... – Legends

ответ

2

Перед загрузкой модуля вы можете определить набор именованных фиктивных модулей.

define('React', function() { 
    // return the React global (if there is one) 
    return React; 
}); 

define('ReactDOM', function() { 
    // return the ReactDOM global (if there is one) 
    return ReactDOM; 
}); 

Это будет «обмануть» Требовать, чтобы они уже загрузились ... что они.

Примечание: Я не знаком с реактивом, поэтому вам может потребоваться вернуть что-то другое. Это будет зависеть от того, как вы включили React и ReactDOM в свою веб-страницу до этого.