【问题标题】:Dynamic Module loading from external source从外部源加载动态模块
【发布时间】:2020-06-22 05:36:58
【问题描述】:

我需要从外部源加载一个反应组件。

   myUrl = "http.//myOtherwebsite/.../myComponent.js";
   myComponent= React.lazy(() => import(/* webpackIgnore: true */ myUrl));

HTTP 响应状态为 200 ok,文件正确(我解决了任何 CORS 问题)。

我有错误:

        TypeError: "undefined has no properties" 

并且该组件未构建。 我该如何解决这个问题?

【问题讨论】:

    标签: javascript reactjs webpack dynamic import


    【解决方案1】:

    让 webpackIgnore 真正忽略导入调用,我不太幸运。因此,import() 的返回值是未定义的,而不是实际的模块。当 webpack 执行此操作时,甚至根本不会获取 yourUrl 处的文件。你会得到'undefined has no properties',因为返回的 undefined 会进入 React 机器而不是实际的模块。

    我对这个问题的解决方案可能无济于事,但这里是:在我的 Typescript 配置文件 tsconfig.json 中,我将选项 removeComments 设置为 True,这是正常的做法。但是它在 webpack 看到它之前就删除了 webpackIgnore 注释,因此 webpack 并没有忽略 import() 并且它替换它的内容返回了困扰你的未定义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-14
      • 2010-09-17
      • 2019-11-03
      • 1970-01-01
      • 1970-01-01
      • 2019-11-13
      • 1970-01-01
      相关资源
      最近更新 更多