在 Javascript 中使用 browserify 和模块导出有问题

问题描述

我第一次使用 browserify 时遇到了一些问题。我有一个使用 Google Map API 的 HTML 页面。加载地图时,我想调用一个“initMap”函数,如下所示:

  <script
        src="https://maps.googleapis.com/maps/api/js?key=MyApiKey&libraries=drawing&callback=initMap&libraries=drawing&v=weekly" async>
</script>

initMap 在 Map.js 文件中定义。到目前为止一切正常。但现在我想在我的 Map.js 文件中使用 wicket 模块。所以我使用 browserify 在我的 js 文件中要求我的模块,因为我不熟悉 RequireJS 和其他模块加载器。我只知道 NodeJS 语法。

所以我像这样使用 browserify:browserify Map.js -o bundle.js

然后我将其添加到我的 HTML 中。

<script src="bundle.js"></script>

但是当我加载页面时,出现错误Uncaught (in promise) Object { message: "initMap is not a function"

我想我需要导出一些东西,但我不知道该怎么做,我是 javascript 新手。我还看到 browerify 中有一个 -standalone 选项,但我不知道如何在这里使用它。

解决方法

确定捆绑模块的存储路径。

如果你只是想添加一个托管模块(脚本标签),你可以使用https://wzrd.in(便宜的懒惰方式)