在iOS 下是可以直接打开pdf 文件url 进行预览的。如果你的小程序是公司主体,会多出一个业务域名的设置选项。
设置好域名后,再使用web-view 打开对应的文件就可以了。

<web-view src="{{pdfurl}}"> </web-view>

在安卓下使用web-view 来预览pdf 文件这个方法就行不通了,安卓系统会直接下载pdf 文件,非常尴尬。
这个时候就要使用微信小程序提供的文件下载和打开功能了。
这样就成功打开文档,这个方法在iOS 中也是可以正常使用的。不过这时候可以看到已经跳出了小程序,而无法使用小程序提供的功能菜单了。

比较好的方法是在iOS 中使用web-view,在安卓中使用downloadFile,这个时候就需要一个判定系统的方法。

微信小程序提供了wx.getSystemInfo获取设备信息的接口,直接调用就可以了。

wx.getSystemInfo({
  success:function(res){
    if(res.platform == "devtools"){
      // PC
      wx.navigateTo({
        url:'../pdfdetail/index?pdfurl='+encodeURIComponent(e.currentTarget.dataset.value)
      })
    }else if(res.platform == "ios"){
      // IOS
      wx.navigateTo({
        url:'../pdfdetail/index?pdfurl='+encodeURIComponent(e.currentTarget.dataset.value)
      })
    }else if(res.platform == "android"){
      // android
      wx.downloadFile({
        url: e.currentTarget.dataset.value,
        success: function(res) {
          const filePath = res.tempFilePath;
          wx.openDocument({
            filePath: filePath
          })
        }
      })
    }
  }
})

标签: none

添加新评论