中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信小程序中如何解決show內容展示以及上傳文件編碼問題

發布時間:2021-07-02 14:54:10 來源:億速云 閱讀:189 作者:小新 欄目:web開發

這篇文章主要介紹了微信小程序中如何解決show內容展示以及上傳文件編碼問題,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

show內容展示

嘗試用微信小程序的template組件實現。同時,嘗試頁面間轉跳時傳參,在目標頁面引入模板文件實現 寫的更少,做的更多 篇幅有限詳細代碼此處省略

  <view class="show-warp">
    <block wx:for="{{discuss}}" wx:key="index">
      <template is="discuss" data="{{item}}"></template>
      <template is="discuss-reply" data="{{item}}"></template>
      <template is="discuss-more" data="{{item}}"></template>
    </block>
  </view>
  Page({
    data: {
      discuss: [],
      petAge: 0,
      reply: false,
      height: 20
    },
    onLoad: function(){
      util.dataList.call(this, {
        cb: util.petAge
      });
    }  
  });
  /*
   * 部分公共邏輯頁代碼
   */
  function list(option) {
    var opt = {
      url: option.url || 'https://api.zg5v.com/index.php/index/show/showindex',
      data: option.data || {
        uid: 148,
        num: option.pageNum || 0
      },
      update: option.update || false,
      cb: option.cb || false,
      func: option.func || false
    };
    // 數據列表
    var showList = [];
    var objDa = [];
    this.data.replyListArr = [];
    // 保存/修改 this指向
    var self = this;
    ajax({
      url: opt.url,
      data: opt.data,
      cb: function(res) {
        showList = res.data.data;
        // 統一格式
        if (!Array.isArray(showList) &&
          typeof showList === 'object') {
          // 計算評論發布時間
          showList.pl.forEach(function(e, i) {
            e.cp_chongbirth = e.cp_addtime * 1000;
            e.replyTime = opt.cb(e.cp_chongbirth, true);
          }, showList.pl);
          objDa.push(showList);
        } else {
          objDa = showList;
        }
        // 更新評論列表
        if (opt.update) {
          let da = res.data.data.pl,
            plDa = self.data.discuss,
            i = 0,
            j = 0,
            len = da.length,
            jLen = plDa.length;
          for (; j < jLen; j++) {
            for (; i < len; i++) {
              if (plDa[j].pl.length > 0) {
                plDa[j].pl.push(da[i]);
              }
            }
          }
          objDa = plDa;
          opt.update = !opt.update;
        }
        if (res.data.status === 1) {
          for (var i = 0, len = objDa.length; i < len; i++) {
            if (opt.cb && typeof opt.cb === 'function') {
              // 計算寵物年齡
              objDa[i].petAge = opt.cb(objDa[i].cp_chongbir ||
                objDa[i].cp_chongbirth);
            }
          }
          self.setData({
            discuss: objDa
          });
        } else if (res.data.status === 2 || res.data.status === 0) {
          self.onLoad();
        }
        objDa = [];
      }
    });
  }

上傳文件編碼問題(*)

header 里的數據在真機預覽的時候是無效的。那就嘗試改變編碼進行傳輸,在uploadFile 的參數中加入

header: {“chartset”:”utf-8”}

或是

header: {"content-type":'application/x-www-form-urlencoded'}

需要改到 formData 中,嘗試將編碼數據加入formData,但僅僅傳輸了數據,并沒有改變編碼.header有問題暫時找不到解決方案,所以編碼操作暫時只能手動進行.在javascript 中,字符串編碼函數是 encodeURI, 在小程序中嘗試可以使用。所以,將代碼改為如下: 

  wx.uploadFile({
    url: 'Upload image server path (Must be secure https)',
    // 待上傳的圖片,由 chooseImage獲得
    filePath: tempFilePaths[0],
    name: 'file',
    // HTTP 請求中其他額外的 form data
    formData: {
      // city: '太原',
      city: encodeURI('太原'),
      // name: 'taiyan',
      name: encodeURI('taiyan') // 名稱
    }, 
    success: function(res) {
      console.log("success", res);
    },
    fail: function(res) {
      console.log("fail", res);
    }
  });

感謝你能夠認真閱讀完這篇文章,希望小編分享的“微信小程序中如何解決show內容展示以及上傳文件編碼問題”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肃北| 屯门区| 富民县| 清丰县| 普陀区| 阿尔山市| 得荣县| 讷河市| 大新县| 定襄县| 阳东县| 子长县| 翼城县| 敦化市| 荣昌县| 华蓥市| 吉水县| 成都市| 来宾市| 嘉鱼县| 嵊州市| 桦南县| 太保市| 鱼台县| 合水县| 吉安市| 会泽县| 宕昌县| 女性| 莱州市| 阜平县| 汉寿县| 松滋市| 即墨市| 沁水县| 望江县| 天津市| 嘉黎县| 德阳市| 凤台县| 塘沽区|