2017-01-11 89 views
2

在我的web应用程序中,我有ReactJS与我的代码捆绑在一起,并包含在html页面中。 我们也有一套我们使用requireJs加载的模块。其中一个模块使用WebPack作为umd目标。忽略并跳过requirejs依赖项

每当客户端尝试使用requireJS加载一个模块,requirejs也尝试加载,因为该模块在该行的反应,ReactDOM:

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

但我不想要求对donwload阵营和ReactDOM,因为它已经加载。 如何让requireJS知道该模块已经加载并且不需要再次加载它?

+0

如何加载一些东西,如果它已经加载?如果模块具有返回值,您只需获得对该模块的引用! 当你说载入时,你的意思是什么? – Legends

+0

答案在第一句“在我的web应用程序中,我将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并不熟悉,因此您可能需要返回不同的内容。这要取决于您在此之前如何在您的网页中包含React和ReactDOM。