小程序web-view在線查看pdf文件

項目中碰到是一個需求是查看列表詳情,詳情的內(nèi)容是PDF文件。初步實現(xiàn)思路是點擊詳情按鈕打開內(nèi)嵌web-view,在web-view內(nèi)加載PDF文件。實現(xiàn)起來很簡單,后續(xù)才發(fā)現(xiàn)安卓與IOS有差異。IOS可直接打開實現(xiàn)效果。安卓只能下載PDF文件就沒有后續(xù)了。

  1. 實現(xiàn)思路
    先判斷當(dāng)前用戶是哪種操作系統(tǒng),根據(jù)兩種系統(tǒng)分別處理。IOS不做處理,安卓機型先下載需要查看的PDF文件,然后本地打開。
  2. 具體代碼
<web-view wx:if="{{ios}}" src="{{url}}"></web-view>
  data: {
    //需要顯示的PDF鏈接
    url:"",
    //當(dāng)前機型
    ios:true
  },
  onLoad: function (options) {
    this.checkPhone(detail.show_url)
  },
  checkPhone(url){
    let _this = this;
    wx.getSystemInfo({
      success: function(res) {
        //判斷當(dāng)前機型
        if (res.system.indexOf('iOS')!=-1){
          _this.setData({
            url: url
          })
        }else{
          _this.setData({
            ios:false
          })
          wx.downloadFile({
            url: url,
            success(res){
              let path = res.tempFilePath;
              wx.openDocument({
                filePath:path,
                fileType:"pdf",
                success(){
                  wx.navigateBack({
                    delta:1
                  })
                }
              })
            }
          })
        }
      },
    })
  }

注意??:
1. 判斷當(dāng)前機型的時候,要注意iOS(注意大小寫,我也是打印res才發(fā)現(xiàn)的)。
2. wx.openDocument() 需要指定打開文件類型(fileType:"pdf"),不然沒有反應(yīng)打不開??。
3. 打開成功后需要后退一個頁面,不然關(guān)閉PDF后是會漏出空白頁,用戶體驗比較差。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 每天起床都必須把被子疊好,床整理整齊。床下的鞋也都要整整齊齊的放在哪里。抽屜里的東西從哪里拿出來還要放回哪里。上課...
    簫小怪閱讀 384評論 0 0
  • 20180616 今日主題《孩子大腦的奧秘》從科學(xué)的自然規(guī)律的角度理解人類大腦的發(fā)育,從而理解孩子的各種行為。 不...
    劉小格閱讀 187評論 0 0
  • 金庸寫過:如果你到過江南,會想到那些燕子,那些楊柳與杏花,那些微雨中的小船~ 江南之地是記憶之地,也是歡喜灑脫之地...
    藥爐煙里閱讀 633評論 0 0

友情鏈接更多精彩內(nèi)容