欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

微信小程序如何實現(xiàn)打開并下載服務(wù)器上面的pdf文件到手機(jī)

這篇文章給大家分享的是有關(guān)微信小程序如何實現(xiàn)打開并下載服務(wù)器上面的pdf文件到手機(jī)的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)2013年開創(chuàng)至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站設(shè)計制作、網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元潯陽做網(wǎng)站,已為上家服務(wù),為潯陽各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108

ios的bug:

        關(guān)于ios系統(tǒng)的bug這塊也是快把柚子給逼瘋了啊,ios系統(tǒng)是沒有文件管理的,柚子用了很多辦法,最后終于確定不管用什么辦法ios都是實現(xiàn)不了下載的,只能實現(xiàn)在線查看。所以沒辦法,如果不考慮兼容ios的話,是很簡單就能解決的,但是我想沒有哪一個小程序會不讓你兼容ios的吧!

先看一下不兼容ios系統(tǒng)的下載柚子是怎么實現(xiàn)的吧:

        首先我們需要在頁面里寫入一個按鈕,用來觸發(fā)pdf的打開和下載,寫上點擊事件

//查看并下載
See_download() {
   wx.downloadFile({//下載
    url: url,//服務(wù)器上的pdf地址
    filePath: wx.env.USER_DATA_PATH + '/test.pdf',//自定義文件地址
    success: function (res) {
     var filePath = res.filePath
     wx.openDocument({//打開
      filePath: filePath,
      success: function (res) {}
     })
    }
   })
}

     OK,執(zhí)行完成后就已經(jīng)下載了,并且也已經(jīng)打開了,但是柚子剛剛就說了,ios是不支持下載的,也就是說ios可以正常打開,但是不能下載,就是這樣,另外安卓的是下載了,但是不太好找,他的存放目錄是:文件管理/Tencent/MicroMsg/wxanewfiles/一個名字很長的文件夾/test.pdf

微信小程序如何實現(xiàn)打開并下載服務(wù)器上面的pdf文件到手機(jī)微信小程序如何實現(xiàn)打開并下載服務(wù)器上面的pdf文件到手機(jī)

好了,這就是不兼容ios下載的方法,但是遇到問題了總要想辦法解決的啊,最后實在沒辦法了,只能稍微改一下需求,改成了轉(zhuǎn)發(fā),反正下載下來也是要發(fā)給別人看的嘛,還不如直接點擊按鈕實現(xiàn)轉(zhuǎn)發(fā)給微信好友了呢

但是微信小程序的轉(zhuǎn)發(fā)是只能轉(zhuǎn)發(fā)頁面的,所以柚子就新建了一個專門存放pdf文件的頁面,我們默人打開這個頁面就自動打開pdf也是一樣的效果:下面是實現(xiàn)思路,僅供參考:

   1、首先需要一個轉(zhuǎn)發(fā)按鈕,要獲取微信的通訊錄的話,按鈕中需要加入open-type="share"這個屬性的

<button type="primary" size="mini" open-type="share" > 轉(zhuǎn)發(fā) </button>

  2、有了轉(zhuǎn)發(fā)按鈕我們直接在頁面中寫方法即可:

onShareAppMessage: function (res) {
  return {
   title: '轉(zhuǎn)發(fā)的標(biāo)題',
   path: '/pages/pdf/pdf?url=' + this.data.url,//這個url是要帶到轉(zhuǎn)發(fā)的那個頁面的
   imageUrl: '/static/images/pdf.png', //圖片可以是本地圖片
  }
},

//注:此方法是不用點擊事件觸發(fā)的,只要有open-type="share"就會觸發(fā),還有就是此方法是不能異步獲取參數(shù)的,所有要帶到轉(zhuǎn)發(fā)頁面的參數(shù)都要在轉(zhuǎn)發(fā)之前獲取到

   3、下面就是轉(zhuǎn)發(fā)的頁面中的內(nèi)容了,要在打開這個頁面的時候就進(jìn)入pdf文件,為了頁面的美觀,柚子又做了一些優(yōu)化,不需要的可以忽略,下面是代碼:

<view>
 <view class="btn_box" wx:if="{{show_btn}}">
  <button type="primary" bindtap="home">返回首頁</button>
  <navigator class="back" open-type="exit" target="miniProgram">關(guān)閉小程序</navigator>
 </view>
</view>
  
/* pages/pdf/pdf.wxss */
.btn_box{
 width: 100%;
 box-sizing: border-box;
 padding: 30rpx 5%;
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%,-50%);
 margin-top: -50rpx;
}
button{
 margin-top: 50rpx;
 height: 100rpx;
 line-height: 100rpx;
}
.back{
 width: 100%;
 margin-top: 50rpx;
 height: 100rpx;
 line-height: 100rpx;
 color: #FFF;
 background-color: #E64340;
 box-sizing: border-box;
 font-size: 18px;
 text-align: center;
 border-radius: 10rpx;
}
// pages/pdf/pdf.js
Page({
 /**
  * 頁面的初始數(shù)據(jù)
  */
 data: {
  check:0,
  url:'',
  show_btn:false,
 },
 /**
  * 生命周期函數(shù)--監(jiān)聽頁面加載
  */
 onLoad: function (options) {
  this.setData({
   url: options.url
  })
 },
 // 返回首頁
 home(){
  wx.reLaunch({
   url: '/pages/index/index'
  })
 },
 /**
  * 生命周期函數(shù)--監(jiān)聽頁面顯示
  */
 onShow: function () {
  var that = this
  wx.showLoading({
   title: '加載中...',
  })
  if(this.data.check == 0){
   this.setData({
    check:1
   })
   wx.downloadFile({
    url: that.data.url,
    filePath: wx.env.USER_DATA_PATH + '/' + that.data.name,
    success: function (res) {
     var filePath = res.filePath
     wx.openDocument({
      filePath: filePath,
      success: function (res) {
       wx.hideLoading();
      }
     })
    }
   })
  }else{
   wx.hideLoading();
   this.setData({
    show_btn:true
   })
  }
 }, 
})

感謝各位的閱讀!關(guān)于“微信小程序如何實現(xiàn)打開并下載服務(wù)器上面的pdf文件到手機(jī)”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

分享題目:微信小程序如何實現(xiàn)打開并下載服務(wù)器上面的pdf文件到手機(jī)
URL分享:http://www.chinadenli.net/article18/jdjgdp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化外貿(mào)建站微信公眾號網(wǎng)站內(nèi)鏈做網(wǎng)站移動網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)