摘要:微信小程序電商家具入門篇前言今年是小程序很火的一年,所以最近在自學(xué)微信小程序,所以打算自己擼一個(gè)小程序出來,由于自己才剛剛自學(xué)不久。先看這個(gè)效果吧代碼如何獲取登錄微信的用戶的頭像和信息使用直接獲取微信頭像,昵稱。
微信小程序---電商家具入門篇
前言今年是小程序很火的一年,所以最近在自學(xué)微信小程序,所以打算自己擼一個(gè)小程序出來,由于自己才剛剛自學(xué)不久。就做了一個(gè)相對(duì)簡(jiǎn)單的家具小程序。當(dāng)然在這其中也遇到了一些問題和bug,在這就和大家分享一下,這樣才能幫助更多的朋友。如有不足之處,希望大家提出寶貴的建議哈。這樣才能一起成長,一起進(jìn)步。
眾所周知,隨著越來越多的app出現(xiàn)在了App商城,導(dǎo)致手機(jī)下載多了app會(huì)導(dǎo)致手機(jī)卡,所以這時(shí)微信小程序騰空而出。只要用戶掃一掃或者搜索一下就能打開應(yīng)用,減少了我們下載app的次數(shù)。
開發(fā)環(huán)境:WXML(HTML),WXSS(CSS),Javascript
開發(fā)工具:vscode,微信開發(fā)者工具
開發(fā)流程:下載微信開發(fā)者工具之后注冊(cè)一下就會(huì)有自己的AppID,微信小程序有官方的微信小程序開發(fā)文檔 開發(fā)文檔
接下來說說我做的小程序吧
萬事開頭難,關(guān)鍵是踏出第一步。在這里我將分享一下我實(shí)現(xiàn)過程以及在實(shí)際過程中遇到的坑。 首先先看看首頁效果吧
代碼實(shí)現(xiàn),主頁東西也不多,主要是布局問題。 wxss代碼:
.img-box image{ width: 100%; height: 100%; } .img-box image:after{ content: ""; position: absolute; bottom: 0; width: 100%; color: #fff; padding: 50px 20px; }1:家具的輪播效果實(shí)現(xiàn)
小程序的輪播實(shí)現(xiàn)是用了swiper組件,滑塊視圖容器里面有indicator-dots,autoplay,setinterval等屬性,可以設(shè)置自動(dòng)播放,時(shí)間間隔。 插入的圖片可以用wx:for來循環(huán)。
wxml代碼:
我這里把圖片放在了js里面遍歷。效果如圖所示
在點(diǎn)擊加入購物車以后,加入綁定事件本該跳轉(zhuǎn)到另一個(gè)頁面的,但是遲遲沒有出現(xiàn)效果也沒有報(bào)錯(cuò),我以為我拼寫或路徑有問題,但我檢查之后沒有問題啊,后來終于發(fā)現(xiàn)了一個(gè)坑。 這里要跳轉(zhuǎn)的是tabBar的頁面,按照默認(rèn)的跳轉(zhuǎn)是不允許的,查看了一下開發(fā)文檔才發(fā)現(xiàn)了問題的所在。
解決辦法:把navigateTo換成switchTab就可以了 跳轉(zhuǎn)有很多種方法,具體可以查看開發(fā)文檔。跳轉(zhuǎn)頁面的api
3:商品如何加入購物車之后如何控制購買商品的數(shù)量并計(jì)算價(jià)格本來想做的是點(diǎn)擊圖片進(jìn)入詳情再點(diǎn)擊加入購物車就能保存到后臺(tái)的購物車?yán)?但是由于自學(xué)的知識(shí)有限,后端目前還沒學(xué),只能加入一個(gè)綁定事件跳轉(zhuǎn)到購物車。
接下來計(jì)入正題:如何控制購物車購買的數(shù)量和計(jì)算總價(jià)?先在js里面定義一個(gè)cart空的數(shù)組,我們先把這個(gè)值賦給這個(gè)空數(shù)組,之后再取這個(gè)值。之后給商品的狀態(tài)默認(rèn)為選擇狀態(tài),點(diǎn)擊一下,就可以把狀態(tài)變?yōu)槿∠?。話不多說,之后計(jì)算出選擇商品的總價(jià)。先看這個(gè)效果吧
js代碼:
selectList(e){ let selectAllStatus = this.data.selectAllStatus; const index=e.currentTarget.dataset.index; let carts=this.data.carts; const selected=carts[index].selected; carts[index].selected=!selected; selectAllStatus = carts[index].selected; // if( carts[index].selected=!selected){ // selectAllStatus:false; // } this.setData({ carts, selectAllStatus, }); this.getTotalPrice(); }, deleteList(e) { const index = e.currentTarget.dataset.index; let carts = this.data.carts; carts.splice(index,1); this.setData({ carts: carts }); if(!carts.length){ this.setData({ hasList: false }); }else{ this.getTotalPrice(); } }, addCount (e){ const index = e.currentTarget.dataset.index; let carts = this.data.carts; let num = carts[index].num; num++; carts[index].num = num this.setData({ carts }) this.getTotalPrice(); }, minuCount(e){ const index = e.currentTarget.dataset.index; let carts = this.data.carts; let num = carts[index].num; if(num<=1) return false; num--; carts[index].num = num this.setData({ carts }); this.getTotalPrice(); }, selectAll(e){ let selectAllStatus = this.data.selectAllStatus; selectAllStatus = !selectAllStatus; let carts =this.data.carts; for(let i=0;i4:如何獲取登錄微信的用戶的頭像和信息 使用wx.getUserInfo直接獲取微信頭像,昵稱。
我們?cè)谑褂眯〕绦騱x.login API進(jìn)行登錄的時(shí)候,直接使用wx.getUserInfo是不能獲取更多的信息的,如微信用戶的openid。 我這里是用的第一種方法
wxml代碼:
js代碼: onLoad: function () { if (app.globalData.userInfo) { this.setData({ userInfo: app.globalData.userInfo, hasUserInfo: true }) } else if (this.data.canIUse){ // 由于 getUserInfo 是網(wǎng)絡(luò)請(qǐng)求,可能會(huì)在 Page.onLoad 之后才返回 // 所以此處加入 callback 以防止這種情況 app.userInfoReadyCallback = res => { this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } } else { // 在沒有 open-type=getUserInfo 版本的兼容處理 wx.getUserInfo({ success: res => { app.globalData.userInfo = res.userInfo this.setData({ userInfo: res.userInfo, hasUserInfo: true }) } }) } }, getUserInfo: function(e) { console.log(e) app.globalData.userInfo = e.detail.userInfo this.setData({ userInfo: e.detail.userInfo, hasUserInfo: true }) } {{userInfo.nickName}} 整體效果
最后
這個(gè)小程序還有一些功能還沒有實(shí)現(xiàn),比如購物車,用戶信息的保存在后臺(tái)的問題,以后等自學(xué)完后端的一些知識(shí),我還是得把這個(gè)小程序完整的做出來,喜歡的話大家可以關(guān)注我的github,我們可以一起學(xué)習(xí),一起搞基哈,也希望可以給我提出一些寶貴的意見源文件:github地址 期待你的star和fork哦
第一次寫文章,項(xiàng)目可能不是很好,表達(dá)的也未必清楚,請(qǐng)給新手多一點(diǎn)的鼓勵(lì),點(diǎn)個(gè)贊,留下你的建議吧
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/95363.html
摘要:微信小程序電商家具入門篇前言今年是小程序很火的一年,所以最近在自學(xué)微信小程序,所以打算自己擼一個(gè)小程序出來,由于自己才剛剛自學(xué)不久。先看這個(gè)效果吧代碼如何獲取登錄微信的用戶的頭像和信息使用直接獲取微信頭像,昵稱。 微信小程序---電商家具入門篇 前言 今年是小程序很火的一年,所以最近在自學(xué)微信小程序,所以打算自己擼一個(gè)小程序出來,由于自己才剛剛自學(xué)不久。就做了一個(gè)相對(duì)簡(jiǎn)單的家具小程序。...
摘要:在互聯(lián)網(wǎng)的第三個(gè)時(shí)代,也就是下一個(gè)互聯(lián)網(wǎng)十年里,云計(jì)算將成為這場(chǎng)大戰(zhàn)的制勝關(guān)鍵所在。就在前不久,亞馬遜旗下的云計(jì)算服務(wù)平臺(tái)宣布正式在中國商用。的殺入對(duì)于中國的云計(jì)算市場(chǎng)也是一大不可忽視的力量?! 』ヂ?lián)網(wǎng)的第一個(gè)時(shí)代我們定義為PC互聯(lián)網(wǎng),互聯(lián)網(wǎng)的第二個(gè)時(shí)代我們定義為移動(dòng)互聯(lián)網(wǎng),而互聯(lián)網(wǎng)的第三個(gè)時(shí)代我們則定義為萬物聯(lián)網(wǎng)。當(dāng)前國內(nèi)的互聯(lián)網(wǎng)正處于第二個(gè)時(shí)代向第三個(gè)時(shí)代過渡期,而云計(jì)算則是支撐起萬物聯(lián)...
摘要:和聯(lián)合總裁及董事會(huì)成員將在下周宣布更多的戰(zhàn)略。曾在去年月的大會(huì)上宣布了公共云計(jì)劃,其中包含了和的相關(guān)功能,以及云服務(wù)和數(shù)據(jù)庫云服務(wù)。目前已經(jīng)表示將會(huì)把和整合進(jìn)自身的公有云之中。但截至到目前,這些組件仍然處在預(yù)覽階段。 在當(dāng)前的云計(jì)算時(shí)代,PaaS領(lǐng)域已經(jīng)成為各大巨頭必爭(zhēng)之地。PaaS提供應(yīng)用服務(wù)引擎,用戶基于該應(yīng)用服務(wù)引擎可構(gòu)建該類的應(yīng)用,典型的案例有Google App Engine、...
摘要:總共邀請(qǐng)全球觀眾參與共同瓜分了億現(xiàn)金紅包大獎(jiǎng)。春晚紅包戰(zhàn)背后暗暗較勁的正是云計(jì)算技術(shù)。此一役后,安全容災(zāi)性能成了每個(gè)春節(jié)紅包團(tuán)隊(duì)需要長期考慮的問題。2007年,國內(nèi)情報(bào)史專家高金虎出版過一本《看不見的第二戰(zhàn)場(chǎng)》,講述無線電情報(bào)與戰(zhàn)爭(zhēng)的關(guān)系??床灰姷牡诙?zhàn)場(chǎng),這段話拿來形容BAT春晚紅包戰(zhàn)背后的云計(jì)算技術(shù)戰(zhàn)再合適不過了。每年的春晚紅包戰(zhàn)似乎成了BAT的正面戰(zhàn)場(chǎng),三巨頭呼風(fēng)喚雨,在短時(shí)間內(nèi)把紅包...
閱讀 2152·2023-05-11 16:55
閱讀 3516·2021-08-10 09:43
閱讀 2631·2019-08-30 15:44
閱讀 2452·2019-08-29 16:39
閱讀 593·2019-08-29 13:46
閱讀 2015·2019-08-29 13:29
閱讀 931·2019-08-29 13:05
閱讀 702·2019-08-26 13:51