舟山闪爸电子技术有限公司

微信商城小程序開發(fā)注意要點(diǎn)

這篇文章針對(duì)微信商城小程序開發(fā)時(shí)經(jīng)常遇到的問題,這篇說一下我們?cè)诖舜伍_發(fā)商城類的小程序時(shí)遇到的一些需要注意的小問題!

微信商城小程序開發(fā)注意要點(diǎn)

⒈收貨地址 
這個(gè)問題,想起來就醉的不行!在開始靜態(tài)布局的時(shí)候,費(fèi)了大半天勁,把整個(gè)選擇地址,創(chuàng)建地址(地圖選址),重新編輯修改地址,刪除地址的頁(yè)面都寫好,然后在手機(jī)預(yù)覽。點(diǎn)一下選擇收貨地址,蹦出來兩套頁(yè)面啊!一套就是我寫的,另一套是…… 
當(dāng)初是死活也沒想到小程序自帶的 wx.chooseAdress 是直接調(diào)用微信底層的方法的,而且所有功能應(yīng)有盡有。真是欲哭無淚?。。?!

分析下發(fā)生這種事情的原因:首先剛開始接觸小程序,對(duì)一些方法在不了解的情況下就開始入手寫代碼,也算是個(gè)大忌了;其次這個(gè)功能在較低版本的開發(fā)者工具上面是預(yù)覽不出該效果的,只能在手機(jī)預(yù)覽;再次臣妾實(shí)在是沒想到啊。

就當(dāng)是個(gè)教訓(xùn)了,在此提醒各位新手一定要避開這個(gè)坑!

⒉小程序最多只能跳5棧 
開發(fā)小程序前一定要熟知業(yè)務(wù)流程,盡量把跳轉(zhuǎn)頁(yè)面控制在5棧之內(nèi)。詳情參考 API 。 
如果遇到一些比較復(fù)雜的業(yè)務(wù)流程,無法控制在5棧之內(nèi),請(qǐng)參考某大神的系列文章

⒊頁(yè)面?zhèn)髦?nbsp;
這個(gè)比較簡(jiǎn)單些,用法跟html+javascript類似。方法有多種,我只說我用到的兩種:通過鏈接傳值和本地存儲(chǔ)傳值!

鏈接傳值: 
wxml 代碼

 

  1. <navigator url="../orderForm/orderForm?form_id=1">

在接收頁(yè)面的 js 中寫

 

  1. onLoad:function(options){
  2. this.setData({
  3. Form_id:options.form_id
  4. })
  5. }

這樣就接收到傳過來的值了。

本地存儲(chǔ)傳值:  傳值頁(yè)面的 js 中寫

 

  1. // 把選中的商品 id(cartIdString)放入本地存儲(chǔ) 供支付頁(yè)面使用
  2. wx.setStorage({
  3. key: 'cartIdString',
  4. data: cartIdString,
  5. success:function(res){
  6. console.log('sucess')
  7. }
  8. })
  9. // 把選中的商品 總價(jià) 放入本地存儲(chǔ) 供支付頁(yè)面使用
  10. wx.setStorage({
  11. key: 'total',
  12. data: that.data.total,
  13. success: function (res) {
  14. console.log('sucess')
  15. }
  16. })

接收頁(yè)面的 js 中寫

 

  1. onReady:function(e){
  2. var that = this;
  3. // 給后臺(tái)返回購(gòu)物車頁(yè)面中被選中商品的 id
  4. wx.getStorage({
  5. key: 'cartIdString',
  6. success: function (res) {
  7. console.log(res.data)
  8. }
  9. })
  10. // 返回購(gòu)物車頁(yè)面中被選中商品的 總價(jià)
  11. wx.getStorage({
  12. key: 'total',
  13. success: function (res) {
  14. that.setData({
  15. total: res.data
  16. })
  17. }
  18. })

⒋request請(qǐng)求數(shù)量  整個(gè)小程序在運(yùn)行時(shí),同時(shí)存在的 request 請(qǐng)求數(shù)量限制在5個(gè)。解決辦法是在頁(yè)面出棧時(shí)將該頁(yè)面的所有 request 請(qǐng)求全部銷毀。  先給每一個(gè) request 請(qǐng)求賦給一個(gè)變量,然后在 onUnload 事件中用 requestTask.abort() 方法將其銷毀。

js 代碼

 

  1. onLoad: function () {
  2. var that = this;
  3. var a = wx.request({
  4. url: 'http://192.168.200.146:8080/trwl/xcx/selcar',
  5. method: 'GET',
  6. dataType: 'json',
  7. success: function (res) {
  8. that.setData({
  9. carts:res.data
  10. })
  11. that.sum()
  12. },
  13. fail: function (res) { },
  14. complete: function (res) { },
  15. })
  16. },
  17. //將 request 進(jìn)行銷毀
  18. onUnload: function () {
  19. requestTask.abort();
  20. a.abort();
  21. }

5.往后臺(tái)傳求組時(shí)不能直接以Array的格式傳,需要將其轉(zhuǎn)換成字符串格式  代碼如下:

 

  1. var cartIdArray = [];
  2. var cartIdString = '';
  3. var carts = this.data.carts;
  4. for(var i=0;i<carts.length;i++){
  5. if(carts[i].ch){
  6. cartIdArray.push(this.data.carts[i].cartId)
  7. }
  8. }
  9. for (var i = 0; i < cartIdArray.length; i++) {
  10. cartIdString += cartIdArray[i] + ",";
  11. }

【本站聲明】
  1、本站文章中所選用的圖片及文字來源于網(wǎng)絡(luò)以及用戶投稿,由于未聯(lián)系到知識(shí)產(chǎn)權(quán)人或未發(fā)現(xiàn)有關(guān)知識(shí)產(chǎn)權(quán)的登記,如有知識(shí)產(chǎn)權(quán)人并不愿意我們使用,如果有侵權(quán)請(qǐng)立即聯(lián)系。
  2、本網(wǎng)站不對(duì)文章中所涉及的內(nèi)容真實(shí)性、準(zhǔn)確性、可靠性負(fù)責(zé),僅系客觀性描述,如您需要了解該類商品/服務(wù)詳細(xì)的資訊,請(qǐng)您直接與該類商品/服務(wù)的提供者聯(lián)系。


KESION 科汛軟件

KESION 科汛軟件是國(guó)內(nèi)領(lǐng)先的在線教育軟件及私域社交電商軟件服務(wù)提供商,長(zhǎng)期專注于為企業(yè)提供在線教育軟件及社交電商SaaS平臺(tái)解決方案。
公司核心產(chǎn)品云開店SaaS社交電商服務(wù)平臺(tái)、在線教育SaaS服務(wù)平臺(tái)、教育企業(yè)數(shù)字化SaaS云平臺(tái)、企微營(yíng)銷助手、私有化獨(dú)立部署品牌網(wǎng)校和在線教育咨詢等。

KESION 不斷通過技術(shù)創(chuàng)新,提供產(chǎn)品和服務(wù),助力企業(yè)向數(shù)字化轉(zhuǎn)型,通過科技驅(qū)動(dòng)商業(yè)革新,讓商業(yè)變得更智慧!



▼點(diǎn)擊進(jìn)入科汛官網(wǎng)了解更多



熱門標(biāo)簽
開發(fā)小程序 SaaS
上/下篇
  • 微信小程序開發(fā)實(shí)踐教程

  • 深入wepy源碼:wepy運(yùn)行原理分析

換一換相關(guān)推薦
精選內(nèi)容
熱點(diǎn)精選