忽略并跳过 requirejs 依赖

Ignore and skip requirejs dependency

在我的网络应用程序中,我将 ReactJS 与我的代码捆绑在一起并包含在 html 页面中。 我们还有一组使用 requireJs 加载的模块。其中一个模块是使用 WebPack 作为 umd 目标构建的。

每当客户端尝试使用 requireJS 加载该模块时,由于模块中的那一行,requirejs 也会尝试加载 React 和 ReactDOM:

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

但是我不想要求下载 React 和 ReactDOM,因为它已经加载了。 如何让requireJS知道这个模块已经加载了,不需要再加载了?

您可以在加载模块之前定义一组命名的虚拟模块。

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; 
});

这将 "trick" 要求认为它们已经加载...它们是。

注意:我不熟悉 React,因此您可能需要 return 一些不同的东西。这将取决于您在此之前如何在网页中包含 React 和 ReactDOM。