我们项目是Vue开发的,然后iOS端预览文件也遇到了`wx.previewFile isnot a function`,Android版本没有这个问题,各种方法排查了一下最后解决了,有遇到这个问题的也可以对比着看下。记录一下自己的排查过程: 首先报出这个错写过js的基本都知道wx这个对象里面没有这个方法,点开jweixin.js的源码搜了一下确实没有这个previewFile函数。于是跟企业微信私有化团队撕逼,你给的这个js文件确实没这个函数啊,是不是最近升级给忘了呀。然后检查了一下之前版本的企业微信上程序,基本都可以预览文件。就更确定了应该不是我们的问题,是微信团队某次升级把sdk搞坏了。微信那边也没辙,写了个最基本的demo测了一下iOS高版本企业微信发现是可以预览的,也就是无法复现这个问题。然而demo给到我们后台却没法跑起来,对接的哥们儿也开始装死了。我看了一下demo的代码,对比着各处使用也没啥不一样啊,自己写了个demo,连我们的后台试了一下,demo确实可以正常跑。OK这下子锅没得跑了。老老实实再检查,发现引入js的路子不一样。 我用的构建工具,本地有一份微信的jssdk文件。所以为了方便本地调试,打开发包时用的是本地的js文件,打测试生产包才会用文档上给出的js url,而js文件引入的方式是用document.write()往文档流里面写,这样引入之后生成的wx对象中就会少掉一部分函数,解决方法也很简单:直接老老实实在html里面用script标签引入进去就好了。 我不知道之前版本的企业微信为什么可以正常预览,但是2.3.X版本的企业微信确实无法预览了。个人猜测像诸如previewFile这一类的函数应该不是jssdk文件中提供的,跟平台实现有关。之前也确实看到有人讲预览文件的函数是app提供上去的,所以使用我那样的引入方式会导致previewFile这类函数绑不到wx对象上去。这也是我个人的猜测,不能保证各位的问题都跟我一样,欢迎交流吧。
企业微信JS-SDK调用wx.previewFile预览文件失败1、我确定传的这三个参数是对的,然后调试时提示:"wx.previewFile is not a function"。 wx.previewFile({ url: '@returnUrl' + url, // 需要预览文件的地址(必填,可以使用相对路径) name: name, // 需要预览文件的文件名(不填的话取url的最后部分) size: size // 需要预览文件的字节大小(必填) }); 2、但是调用预览图片这个接口时是正常的。 wx.previewImage({ current: '@returnUrl' + url, // 当前显示图片的http链接 urls: this.urlPath // 需要预览的图片http链接列表 });
2020-01-16我们项目是Vue开发的,然后iOS端预览文件也遇到了`wx.previewFile is not a function`,Android版本没有这个问题,各种方法排查了一下最后解决了,有遇到这个问题的也可以对比着看下。记录一下自己的排查过程: 首先报出这个错写过js的基本都知道wx这个对象里面没有这个方法,点开jweixin.js的源码搜了一下确实没有这个previewFile函数。于是跟企业微信私有化团队撕逼,你给的这个js文件确实没这个函数啊,是不是最近升级给忘了呀。然后检查了一下之前版本的企业微信上程序,基本都可以预览文件。就更确定了应该不是我们的问题,是微信团队某次升级把sdk搞坏了。微信那边也没辙,写了个最基本的demo测了一下iOS高版本企业微信发现是可以预览的,也就是无法复现这个问题。然而demo给到我们后台却没法跑起来,对接的哥们儿也开始装死了。我看了一下demo的代码,对比着各处使用也没啥不一样啊,自己写了个demo,连我们的后台试了一下,demo确实可以正常跑。OK这下子锅没得跑了。老老实实再检查,发现引入js的路子不一样。 我用的构建工具,本地有一份微信的jssdk文件。所以为了方便本地调试,打开发包时用的是本地的js文件,打测试生产包才会用文档上给出的js url,而js文件引入的方式是用document.write()往文档流里面写,这样引入之后生成的wx对象中就会少掉一部分函数,解决方法也很简单:直接老老实实在html里面用script标签引入进去就好了。 我不知道之前版本的企业微信为什么可以正常预览,但是2.3.X版本的企业微信确实无法预览了。个人猜测像诸如previewFile这一类的函数应该不是jssdk文件中提供的,跟平台实现有关。之前也确实看到有人讲预览文件的函数是app提供上去的,所以使用我那样的引入方式会导致previewFile这类函数绑不到wx对象上去。这也是我个人的猜测,不能保证各位的问题都跟我一样,欢迎交流吧。
wx.previewFile 失败引入的1.2.0js中没有previewFile方法,在wx.ready 中 引用 wx.previewFile 一直debug cancel,请问有什么解决方法吗?
2020-01-16