1. 程式人生 > >微信小程式採坑記錄

微信小程式採坑記錄

坑一:wx:for迴圈,2層資料可以迴圈出來,但陣列物件的屬性迴圈不出來;
錯誤程式碼:

<block  wx:for="{{arr}}" wx:key="{{index}}">
  <view>{{item.attributes.name}}</view>
</block>

 

坑二:電腦除錯時的滾動條在手機上不會顯示;
備註:如果想讓滾動條不再tabBar上顯示(電腦上),可以設定page{padding-bottom:tabBar的高度};

坑三:wx:if和wx:for不能同時在一個元件上使用

自己坑: 小程式下拉重新整理介面呼叫後, 要呼叫wx.stopPullDownRefresh(),不然會一直重新整理,有留白

---------------------------------------------------------------------------------------------------------------

受boss要求,現在要從原生小程式轉mpvue框架,記錄一下學習過程中遇到的問題:

坑一:mpvue開發小程式時候,要新增靜態本地圖片

  • 報錯:

VM14878:2 Failed to load local image resource /images/bg.png 
the server responded with a status of 404 (HTTP/1.1 404 Not Found)

*解決方法:將放圖片的資料夾放在static資料夾裡,static是專門用來放靜態檔案的

 

坑二:data中每個鍵值對,:後面要有空格;

  • 報錯:

✘ http://eslint.org/docs/rules/key-spacing Missing space before value for key 'tabs'
srcpagestestindex.vue:22:12

坑三:字串必須以單引號包括;

  • 報錯:

✘ http://eslint.org/docs/rules/quotes Strings must use singlequote
srcpagestestindex.vue:23:9


坑三:定義函式時,(括號)前(後)都要有空格

srcpagestestindex.vue:31:23


坑四:函式中各語句間不用加分號


坑五:button按鈕獲取使用者資訊,weui裡好像不對;

直接為button新增點選事件,設定其open-type和lang,在函式回撥裡即可獲得使用者資訊

程式碼如下:

<template>
  <div>
      <button v-on:click="click" open-type="getUserInfo" lang="zh_CN">按鈕</button>
  </div>
</template>

<script>

export default {
  methods: {
    click: function (e) {
      console.log('userInfo', e)
    }
  }
}
</script>

表單事件的提交與重置

在form上繫結@submit(@reset)="dddd",在button上設定其form-type="submit/reset"執行相關操作

資料結構看console列印的結果

如果form或button忘記上述設定,其回撥函式中返回的是滑鼠的點選事件
若form繫結的不是@submit,而是@click,則點選表單內任一元素均會提交表單


在使用sublime時,不要使用tab,這會使其縮進出現問題!!!


Trailing spaces not allowed

*表示你在該行有多餘的空格


分享功能不能寫在components中,要寫在父元件裡

否則報錯:

Cannot read property 'apply' of null;at pages/commit-done/index page onShareAppMessage function
TypeError: Cannot read property 'apply' of null


使用第三方框架過程中,也可使用一部分原生元件

書寫規範問題

報錯

✘  http://eslint.org/docs/rules/space-infix-ops  Infix operators must be spaced
  src\pages\hzw_text\index.vue:34:23
      for (var i = 1; i <4; i++) {

意思是4前面需要一個空格

使用mpvue自定義左邊膠囊按鈕時,由於單位不充一問題,自定義膠囊和系統膠囊在不同型號手機上不同對齊

原因分析:系統膠囊使用pt為單位,但mpvue轉小程式時,px單位轉為rpx,會自適應變化;
解決方法: 使用絕對單位 pt

(解決效果並不能適配所有手機,誰有更好的方法,歡迎聯絡)