webpack 包中的导出功能

2024-03-19

我正在使用需要回调的谷歌地图 API。如何从 webpack 包导出回调以供外部脚本(例如 Google Maps API)使用?

HTML(X-d 输出键):

<div id="hello"></div>
<script src="/js/map.bundle.js"></script>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=XXXXXXXXXXX&callback=initMap"></script>

map.js:

var $ = require("jquery");
function initMap() {
    $("#hello").text("hello world");
}

我构建了上面的map.js文件放入名为的 webpack 包中map.bundle.js.

浏览器控制台错误:

Yc 消息:“initMap 不是函数”名称:“InvalidValueError” 堆栈:“新 Yc 处的错误↵(https://maps.googleapis.com/ma https://maps.googleapis.com/ma...

我也尝试添加

module.exports = { initMap: initMap }

to map.js但这没有帮助。

EDIT:同样的问题,但是在表单事件中使用 webpack 包中的 javascript 函数:

HTML:

<form onsubmit="sayHello(event)">
    <button type="submit">Say Hello</button>
</form>

JS:

function sayHello(e) {
    e.preventDefault();
    console.log("hello");
    return false;
}

当JS打包成bundle后,控制台不再打印“hello”


您的 webpack 文件 (map.bundle.js) 通常不会将任何函数或变量写入global(在这种情况下,window) 命名空间。

这会给需要位于全局命名空间(如 jQuery 或 google 地图 api)的库带来问题。

解决这个问题的一种方法是添加initMap到窗口对象

var $ = require("jquery");
function initMap() {
    $("#hello").text("hello world");
}
window.initMap = initMap;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

webpack 包中的导出功能 的相关文章

  • 如何将选定的元素从 devTools 页面发送到 chrome 侧边栏页面

    我正在开发 chrome devTools 扩展 基本上 我在 元素 面板中添加了一个侧边栏窗格 开发工具 js chrome devtools panels elements createSidebarPane ChromeTrast f
  • 如何在 React JS 中根据键创建动态表?

    我正在尝试在 React JS 中创建一个动态表组件 该组件当前只有一个静态标头 其中包括最常见的结果键 有些结果还包含更多信息 例如电话号码 学位 如何根据键 值的存在动态地使用附加列扩展表 我应该与state并在存在时使其可见 或者我应
  • 为什么我的事件处理程序会导致“不是函数”错误,但可以在 Firebug 控制台中运行?

    使用JQuery 1 2 6 在Firefox 3和IE7上进行测试 我有一些非常基本的 JavaScript 代码来重新加载验证码图像 在我的 JS 文件中 我有 var Captcha count 0 Refresh function
  • 在 IE8 中使用 javascript __proto__

    你好 我在 javascript 中有这两个对象 var john firstname John lastname Smith var jane firstname Jane 这样做 jane proto john 我可以访问 Jane 的
  • 为什么 Jshint 在此 if 语句中说“变量已定义”?

    我有这个代码 if something is true var someVar true else var someVar false JsHint 表示在 else 语句部分 someVar 已被定义 这是为什么 我该如何解决 Thank
  • 如何从 javascript 错误对象读取错误消息

    有人可以帮我解决以下问题吗 我正在通过 redux 操作进行后调用 如下所示 export const addEmployee firstName surname contactNumber email gt async dispatch
  • Javascript:使用 IIFE 和块语句之间的区别

    IIFE主要用于封装作用域 function let myVar 10 not global 但为什么不直接使用块语句呢 let myVar 10 also not global 除了范围封装之外 进一步使用 IIFE 是否还有其他好处 块
  • 多次训练brain.js?

    在第一次训练后 如何将新信息 仅新信息 而不是所有信息 因为这会花费太多性能 训练到我的用 Brain js 制作的神经网络 它有点粗糙 但您可以使用以下结构来实现 如果我们加入 2 个训练数据集 旧数据集与新数据集 然后重新训练keepN
  • html 图像 src 调用 javaScript 变量

    这是我的代码 我想问 我怎样才能做到这一点 img src img apple 我一直在尝试使用 call 函数和 document onload 但它根本不起作用 有人可以救我吗 我假设你只是想用 javascript 更新图像 src
  • tomcat 7.0.50 java websocket 实现给出 404 错误

    我正在尝试使用 Java Websocket API 1 0 JSR 356 中指定的带注释端点在 tomcat 7 0 50 上实现 websocket 以下是我如何对其进行编码的简要步骤 1 使用 ServerEndpoint注解编写w
  • 纯 JS 相当于 Jquery eq()

    jquery 的纯等价物是什么eq 例如 我怎样才能实现 class1 class2 eq 0 text 1254 在纯 JavaScript 中 要获取数组中的元素索引 可以使用 在 JavaScript 中 因此 要重现您的代码 您可以
  • 如何将本地文本文件上传到文本区域(网页内)

    我是一名新手程序员 需要一些帮助来弄清楚如何将本地文本文件上传到我正在构建的网站内的文本区域 我非常精通 HTML CSS 对 Javascript JQuery 有相当的了解 而且我刚刚学习 PHP 您能提供的任何帮助我将不胜感激 我有一
  • 如何防止输入文本中出现“后重音”

    我相信这是一个简单的问题 但在谷歌上搜索几个小时后我找不到任何答案 也许我无法在搜索中使用正确的单词 P 我有一个 javascript 方法 可以防止用户用数字以外的其他字符填充文本框 如下面的代码所示 它在 KeyDown 事件中使用
  • 我应该如何实现将状态保存到 localStorage?

    CODE var React require react var Recipe require Recipe jsx var AddRecipe require AddRecipe jsx var EditRecipe require Ed
  • 如何绕过Access-Control-Allow-Origin?

    我正在一个平台上对我自己的服务器进行ajax调用 他们设置了阻止这些ajax调用的平台 但我需要它从我的服务器获取数据以显示从我的服务器数据库检索到的数据 我的 ajax 脚本正在运行 它可以将数据发送到我的服务器的 php 脚本以允许其处
  • 如何在打字稿中使用外部js

    我通过 Typescript 代码生成 Angular JS 代码 在一种情况下 我需要将外部 JS 文件添加到我的打字稿文件中 并且需要访问 js 文件中的类 我像这样添加js文件
  • 使用 webpack 导入目录中的所有 sass 文件

    我目前正在尝试使用 Webpack 捆绑我的所有文件 但我不知道在处理多个文件夹和 scss files 我曾经使用 grunt 来完成这些任务 这是我的文件夹结构的示例 functions mixin scss function scss
  • ‘state’未定义 no-undef

    我使用教程来学习 React 但我很快就陷入困境 在教程中 他们使用以下代码 import React Component from react class Counter extends Component state count 0 r
  • highchart堆积柱每个类别的总数据

    我想获取每个类别的总数据 这point stackTotal只给出活动数据的总数 从我粘贴的代码示例中 我想知道每种水果的总消耗量 因此 即使我单击右上角图例上的乔的名字 这使得堆叠图表上的所有乔信息都处于非活动状态 我仍然可以知道约翰 简
  • 如何从 Cloud Functions for Firebase 文件夹读取证书文件

    我正在尝试读取 certs 文件夹下的文件 如下所示 functions certs idp public cert perm 这是我用来读取文件的代码 fs readFileSync path join dirname certs idp

随机推荐

  • 如何在 python 中实现“#ifdef”?

    编程于C我曾经有代码部分仅用于调试目的 记录命令等 通过使用这些语句可以完全禁用生产 ifdef预处理器指令 如下所示 ifdef MACRO controlled text endif MACRO 做类似事情的最好方法是什么python
  • 神经网络立即过拟合

    我有一个带有 2 个隐藏层的 FFNN 用于几乎立即过拟合的回归任务 epoch 2 5 取决于 个隐藏单元 ReLU Adam MSE 每层相同的隐藏单元数 tf keras 32 个神经元 128 个神经元 我将调整隐藏单元的数量 但为
  • Q_PROPERTY:成员与读/写

    我正在阅读 Qt 5 5 关于 Q PROPERTY 宏的文档 但我不能很好地理解它 据我所知 您可以在此宏中使用关键字 MEMBER 或访问器 READ WRITE 来代替 如果您使用关键字 MEMBER 则不必编写访问器 因为您可以使用
  • 如何重新编译Google Drive API sdk?

    这是我们的问题 如何在dotnet中重新编译Google Drive api sdk gt 我们没有找到源代码 gt 在二进制包中 有一个源文件未随项目一起提供 我们不知道如何处理它 提问原因 在 dotnet 中 我们无法使用从 Goog
  • mysqlnd_ms 错误 - getaddrinfo 失败,mysqlnd_global_stats 未知

    我正在尝试设置 mysqlnd ms 以便它达到在从属数据库上读取和在主数据库上写入的目的 但是 当 httpd 重新启动时 我收到此错误 PHP Warning PHP Startup Unable to load dynamic lib
  • ASP.NET Core 中的 IHttpActionResult 和辅助方法

    我正在尝试将我的 web api 2 项目移动到 ASP NET 5 但我有很多不再存在的元素 例如IHttpActionResult or Ok NotFound 方法 或者RoutePrefix 我应该改变每一个IHttpActionR
  • VS2005中如何将静态库项目转换为dll项目

    当我在vs2005中创建一个项目时 我还可以创建 Win32 gt Win32Project 我可以选择 控制台应用程序 或 dll 或 静态库 如果我创建了一个静态库项目 我怎样才能将它转换为dll项目 我在创建的项目的设置面板中找到了
  • MySQL系统数据库表可以转换为InnoDB吗?

    我最近安装了MySQL 5 5 我在用着InnoDB作为我所有数据库的引擎 我注意到mysql数据库默认值及其所有表 用户 数据库等 都是MyISAM 有什么理由他们不能 不应该InnoDB 有谁知道 MySQL 是否需要mysql数据库是
  • 线程内存布局

    我了解进程内存布局的样子 代码 数据 堆 堆栈 但是 我不明白具有多个线程的程序的内存布局究竟是什么样的 毕竟 该进程有一个堆栈 所以我假设所有线程都以某种方式共享相同的堆栈 但这似乎不对 因为每个线程都有自己的堆栈 并且不能保证线程按照调
  • 从 shell_exec() 获取输出和退出状态

    当做类似的事情时 output shell exec command 2 gt 1 收集命令的 stdout 和 stderr output 有没有办法找到命令的退出状态 人们可以将命令输出写入临时文件 然后附加退出状态 但这相当笨重 还有
  • $_SERVER['REQUEST_URI'] 和 header('location: ...') 的任何安全问题;

    我的网站有页眉 页脚和主要内容 如果用户未登录 则对于主要内容 可能会显示登录表单而不是实际内容 在该登录表单上我写了 SERVER REQUEST URI 在会话变量中 SESSION redirect 我的登录表单后处理程序将登录用户
  • Lucene中的geohash索引是如何工作的

    在 lucene space 4 中 我想知道 geohash 索引在幕后是如何工作的 我理解 geohash 的概念 它基本上需要 2 个点 纬度 经度 并创建一个 字符串 哈希 索引只是一个 字符串 索引 r 树或四叉树 还是类似的东西
  • 如何捕获 lambda 表达式内外部变量的值?

    我刚刚遇到以下行为 for var i 0 i lt 50 i Task Factory StartNew gt Debug Print Error i ToString 会导致一系列 Error x 其中大多数x等于50 相似地 var
  • memcpy 在 Linux 中移动 128 位

    我正在 Linux 中为 PCIe 设备编写设备驱动程序 该设备驱动程序执行多次读取和写入来测试吞吐量 当我使用 memcpy 时 最大有效负载TLP https en wikipedia org wiki PCI Express Data
  • Kotlin 是否支持类似于 Swift 中的协议组合的接口组合或未来有计划吗?

    到目前为止我发现的答案可能是否定的 但我想知道未来是否有任何计划支持此功能 这是 Swift 中的样子 协议组合的形式为 SomeProtocol AnotherProtocol 您可以根据需要列出任意多个协议 并用与号 分隔它们 除了协议
  • 在 Entity Framework Core 中使用两列的一对多关系

    在我的项目中我有一张桌子Translation可以有任何模型的翻译 为了实现这一点 该表有两个字段 Model and ModelId The Model属性保存一个整数 指示模型的类型和ModelId有这个模型的id 因此 例如 Prod
  • 删除ggplot2中geom_boxplot中的边框

    这看起来应该相对简单 但我找不到允许我这样做的论点 并且我已经在 Google 和 Stack 中搜索了答案 示例代码 library ggplot2 library plotly dat lt data frame cond factor
  • Dagger 2.15:AppComponent - 无法处理此接口

    我无法构建我的应用程序 并出现以下错误 Task app kaptDebugKotlin debug AppComponent java 7 error ComponentProcessor MiscError dagger interna
  • 使用转换器从 System.Windows.SystemParameters.PrimaryScreenWidth 进行 WPF 绑定

    我试图将 System Windows SystemParameters PrimaryScreenWidth 绑定到 ColumnDefinition 的 来自 Grid 内 宽度属性 并使用转换器将 PrimaryScreenWidth
  • webpack 包中的导出功能

    我正在使用需要回调的谷歌地图 API 如何从 webpack 包导出回调以供外部脚本 例如 Google Maps API 使用 HTML X d 输出键 div div map js var require jquery function