引入jweixin.js后任然报错“Uncaught ReferenceError: wx is not defined”

最近在做前端开发,场景如下:

1. 小程序/pages/web/web中包了一个web-view

2. web-view的网页中有一个按钮点击后需要跳回小程序/pages/index/index

查资料可以使用微信JSSDK中的wx.miniProgram.navigateTo接口

于是我在网页前面通过引用它的js文件

并在下面的script中使用了wx.miniProgram.navigateTo,可以控制台出现错误“Uncaught ReferenceError: wx is not defined”(苹果手机上报的是“can't find variable:wx”)

于是在网上查了好久,做了以下几种尝试:

1. 将引用js文件的代码提到靠前位置【无效】

说可能是因为执行到接口代码时,js文件还没加载完,因此要把引用js文件的代码位置往前调以尽早加载js文件,结果无效

2. 重置define、require【无效】

说可能是jweixin-1.0.0.js与你其它某js冲突,需要


试过之后还是报原来的错,无效

3. 没有按照wx.config/wx.ready的步骤来【无效】

还有人说根据微信JSSDK使用文档https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#63

需要先做wx.config->wx.ready才能开始调其它接口

结果我把wx.config写进去,wx.config也报相同错误,说明不是这个原因。某些简单接口无需按照wx.config/wx.ready的步骤走,可直接调用

4. 将jweixin.js下载到本地【有效】

一开始下载的jweixin-1.6.0.js(直接浏览器中访问链接https://res.wx.qq.com/open/js/jweixin-1.6.0.js,然后将内容全部拷贝,建立一个新文件粘贴并保存),但是引入调用接口时,报文件内部代码语法错误。

而后重新下载了jweixin-1.3.2.js,问题解决

 

到底是什么原因,还没搞清楚,特此记录。

你可能感兴趣的:(前端开发,webview,javascript,jweixin.js,小程序)