微信小程序開發 錯誤修改方法筆記

1  微信小程序中調用豆瓣API接口時提示錯誤 GET http://api.douban.com/v2/movie/in_theaters 400 的解決方法如下
loadMovie:function(){
    var page=this;
    wx.request({
      url: 'http://api.douban.com/v2/movie/in_theaters', //僅爲示例,並非真實的接口地址
      header: {
        'content-type': 'application/json' // 默認值
      },
      success: function (res) {
        console.log(res.data)
      }
    })
  }
以上程序請求豆瓣API的時候出錯不能夠正常得到網站的數據,後來發現,官方給的那個默認值需要改一下,也就是
      header: {
        'content-type': 'application/json' // 默認值
      },
以上程序中的'application/json'
需要改成'json'

之後在運行就不會出錯了。


2  微信小程序提示錯誤:Cannot read property 'name' of undefined;at pages/movie/movie page processSubject function


這種錯誤就是在程序某個位置過多查詢了,多加了一個  .name  
就比如:subject.genres下面就沒有了如果加上一個subject.genres.name就會出出現上述錯誤


3  微信小程序,循環提取數據bug,不能夠循環提取已有的數組中的數據。

<block wx:for="movies"wx:key="*this">
    <view class="movie">
      <view class="pic">
        <image src="item.images.medium" mode="aspectFit"/>
      </view>
      <view class="movie-info">
        <view class="base-info">
          <text>{{item.text}}</text>
        </view>
      </view>
    </view>
    <view calss="hr"></view>
  </block>
以上代碼中movie 無法正常提取其中的 text項
修改方法:將上述<block wx:for="movies"wx:key="*this">中的wx:for="movies"改成wx:for="{{movies}}"之後就能正常輸出數據了。
        <image src="item.images.medium" mode="aspectFit"/>數代碼改成<image src="{{item.images.medium}}" mode="aspectFit"/>
其中item代表當前這個數據即movies[i]因此通過兩個大括號提取出來其中的數據就可以運行輸出了。

4  微信小程序的背景無法充滿屏幕。
在升級後的客戶端默認height值改變了,需要在.wxss文件的最前端加上以下程序
page{
  height: 100%;
}


5  當引用其它JS文件時,在全局utils.js裏配置完成後在調用窗口聲明 var subjectUtil=require("../../utils/subjectUtil.js");
提示錯誤:Uncaught Error: module "pages/utils/subjectUtil.js" is not defined
解決方法是需要在 utils.js裏寫如下程序
module.exports={
  processSubject(你外部用的函數名): processSubject(內部聲明的函數名),
  processSubjects: processSubjects
}




6  提示錯誤:appservice:16 GET http://api.douban.com/v2/movie/in_theaters net::ERR_NETWORK_CHANGED
檢查以下自己電腦的網絡,或者重啓開發者程序。


7  當引用其它JS文件時會提示錯誤:
WAService.js:3 thirdScriptError


this.setData is not a function;at pages/recommend/recommend loadMovie function;at api request success callback function


TypeError: this.setData is not a function
代碼如下
  

loadMovie: function () {
    var page = this;
    wx.request({
      url: 'http://api.douban.com/v2/movie/top250', //僅爲示例,並非真實的接口地址
      header: {
        'content-type': 'json' // 默認值
      },
      success: function (res) {


        var subjects = res.data.subjects;
        subjectUtil.processSubjects(subjects);
        page.setData({ movies: subjects, hidden: true });
      }
    })
  }

當把subjectUtil.processSubjects(subjects);
換成page.processSubjects(subjects);的時候並且在當前js文件裏面定義函數就不會出錯。但是沒有解決調用其它文件裏封裝的函數。




8  提示錯誤:VM131:2 Failed to load image 
          http://239319157.debug.open.weixin.qq.com/pages/detail/detail : the server responded with a status of 404 (HTTP/1.1 404 Not Found) 


          From server 127.0.0.1
   官方說法是1.5.2引入的bug。換成之前版本就不會報錯,但是圖片卻沒有顯示出來,這就很尷尬了。




9  bug:按鍵點擊效果不能夠正常顯示
   bug:問題7

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章