【问题标题】:how to fix: "exports is not defined" & "require is not defined" error when importing package from vscode webview extension如何修复:从 vscode webview 扩展导入包时出现“未定义导出”和“未定义要求”错误
【发布时间】:2019-11-18 02:20:38
【问题描述】:

我正在开发一个基于 CatCoding example 的 vscode webview 扩展。

我正在尝试使用标签从 cdn 导入外部 node_module。包已加载,我可以使用它,但在某些导入的函数中存在模块导出,我收到以下错误:Uncaught ReferenceError: exports is not defined

我发现有人使用以下“hack”解决了这个问题:
<script>var exports = {};</script>

所以我试了一下,现在我得到了关于 'require' 的相同错误:
Uncaught ReferenceError: require is not defined

我只是尝试做简单的包导入,不知道为什么会这样,可能是因为它作为 webview 运行,可能是因为电子?

知道怎么解决吗?

【问题讨论】:

    标签: webview visual-studio-code electron vscode-extensions


    【解决方案1】:

    您正在加载的 JavaScript 包正在使用模块系统,可能是 commonJS。 webview只是一个普通的网页,所以需要自带模块支持。

    为此,您可以使用诸如webpack 之类的捆绑器,或者直接包含诸如RequireJs 之类的模块加载器。

    【讨论】:

      猜你喜欢
      • 2016-09-06
      • 1970-01-01
      • 1970-01-01
      • 2015-01-16
      • 1970-01-01
      • 2011-01-07
      • 2012-10-13
      • 2019-05-01
      相关资源
      最近更新 更多