天天看點

考研題庫小程式中如何實作打開考研思維導圖pdf

考研題庫小程式中如何實作打開考研思維導圖pdf

需求:遇到這麼一個需求,考研題庫小程式中,為解決分享學習資料的痛點,需要做一個資料庫,是以就要實作打開考研資料思維導圖pdf的功能。

問題:微信小程式中使用web-view打開pdf, IOS 可以正常打開,Android 打開為空白。

解決:使用wx.downloadFile和wx.openDocument。通過 downloadFile 獲得檔案路徑 (本地路徑),然後使用openDocument新開頁面打開文檔。

wx.downloadFile(Object object)

功能描述

下載下傳檔案資源到本地。用戶端直接發起一個 HTTPS GET 請求,傳回檔案的本地臨時路徑 (本地路徑),單次下載下傳允許的最大檔案為 200MB。使用前請注意閱讀相關說明。

注意:請在服務端響應的 header 中指定合理的 Content-Type 字段,以保證用戶端正确處理檔案類型。

傳回值

一個可以監聽下載下傳進度變化事件和取消下載下傳的對象。

實作代碼

wx.downloadFile({
  url: 'https://.../XXX.pdf', //僅為示例,并非真實的資源
  success (res) {
    // 隻要伺服器有響應資料,就會把響應内容寫入檔案并進入 success 回調,業務需要自行判斷是否下載下傳到了想要的内容
    if (res.statusCode === 200) {

    }
  }
  fail (err) {
    console.log(err); //失敗
  }
})      

wx.openDocument(Object object)

功能描述

新開頁面打開文檔。檔案路徑 (本地路徑) ,可通過 downloadFile 獲得。

實作代碼

wx.openDocument({
  fileType: 'pdf', // 檔案類型
  filePath: Path, //要打開的檔案路徑
  success: function (res) {
    console.log('打開 PDF 成功');
  }
})      

實作效果