如何解决:从vscode Webview扩展导入软件包时,“未定义导出”和“未定义要求”错误

时间:2019-07-08 14:28:37

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

我正在基于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的形式运行,也许是因为电子?

任何想法我该如何解决?

1 个答案:

答案 0 :(得分:0)

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

为此,您可以使用诸如https://drive.google.com/file/d/1Upp4u1OPcyPADHnnL-nKqwlzSIJu7cV_/view之类的捆绑器,或者直接包含诸如webpack之类的模块加载器。