经查,发现我们开发的程序是用webpack打包发布的,而该页面在微信小程序打开时,对方注入了几个微信相关的js脚本,而该脚本也是使用webpack打包生成的。双方的js代码导致window.webpackJsonp 被重复定义。 当两者的webpack版本不同时,生成的 window.webpackJsonp,并不一致:3.x版,该对象为函数,4.x版(不确定),该对象为数组。所以调用该对象时就产生了上面的错误。搜索引擎搜索一通,发现在webpack配置文件中加入以下配置,即可绕过该对象重复定义问题

output: {
jsonpFunction:"webpackJsonpFunction3f"
}

从webpack官方的API来看,好像这个配置要4.X才支持,但是我们好像3.X的webpack也是有效的。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。