日本高清免费一本视频100禁_在线不卡欧美精品一区二区三区_国产一区二区好的精华液_中文综合在线_国产啊啊啊视频在线观看_大地资源网免费观看高清

IT之道-艾銻知道

您當前位置: 主頁 > 資訊動態 > IT知識庫 >

微信小程序開發總結(附源代碼)


2020-02-13 17:04 作者:admin 瀏覽量:
迎戰疫情,艾無限用愛與您同行
中國中小企業提供免費IT外包服務
 
 
 
這次的肺炎疫情對中國的中小企業將會是沉重的打擊,據釘釘和微信兩個辦公平臺數據統計現有2億左右的人在家遠程辦公,那么對于中小企業的員工來說不懂IT技術將會讓他們面臨的最大挑戰和困難。
 
電腦不亮了怎么辦?系統藍屏如何處理?辦公室的電腦在家如何連接?網絡應該如何設置?VPN如何搭建?數據如何對接?服務器如何登錄?數據安全如何保證?數據如何存儲?視頻會議如何搭建?業務系統如何開啟等等一系列的問題,都會困擾著并非技術出身的您。
 
 
好消息是當您看到這篇文章的時候,就不用再為上述的問題而苦惱,您只需撥打艾銻無限的全國免費熱線電話:400 650 7820,就會有我們的遠程工程師為您解決遇到的問題,他們可以遠程幫您處理遇到的一些IT技術難題。
 
如遇到免費熱線占線,您還可以撥打我們的24小時值班經理電話:15601064618或技術經理的電話:13041036957,我們會在第一時間接聽您的來電,為您提供適合的解決方案,讓您無論在家還是在企業都能無憂辦公。
 
那艾銻無限具體能為您的企業提供哪些服務呢?
艾銻無限始創于2005年,歷經15年服務了5000多家中小企業并保障了幾十萬臺設備的正常運轉,積累了豐富的企業IT緊急問題和特殊故障的解決經驗,制定了相對應的解決方案。我們為您的企業提供的IT服務分為三大版塊:
 
第一版塊是保障性IT外包服務:如電腦設備運維,辦公設備運維,網絡設備運維,服務器運維等綜合性企業IT設備運維服務。
 
第二版塊是功能性互聯網外包服務:如網站開發外包,小程序開發外包,APP開發外包,電商平臺開發外包,業務系統的開發外包和后期的運維外包服務。
 
第三版塊是增值性云服務外包:如企業郵箱上云,企業網站上云,企業存儲上云,企業APP小程序上云,企業業務系統上云,阿里云產品等后續的云運維外包服務。
 
您要了解更多服務也可以登錄艾銻無限的官網:www.bjitwx.com詳細說明,疫情期間,您企業遇到的任何困境只要找到艾銻無限,能免費為您提供服務的我們絕不收一分錢,我們全體艾銻人承諾此活動直到中國疫情結束,我們將這次活動稱為——春雷行動。
 
以下還有我們為您提供的一些技術資訊,以便可以幫助您更好的了解相關的IT知識,幫您渡過疫情中辦公遇到的困難和挑戰,艾銻無限愿和中國中小企業一起共進退,因為我們相信萬物同體,能量合一,只要我們一起齊心協力,一定會成功。再一次祝福您和您的企業,戰勝疫情,您和您的企業一定行。
 
微信小程序開發總結(附源代碼)
最近公司項目不是很忙,有時間研究研究微信小程序。參考了目前市場上各類答題類的app、小程序等等,做了一款自己的微信答題小程序,包括前端和后端,后端是用node做的?,F在已經上線了,名字叫【你問我猜猜猜】,大家感興趣的話可以去試玩一下。

會vue、react, 微信小程序,so easy
 
如果之前用過vue或者react,直接看看文檔上手微信小程序完全沒問題。整體開發思路很相似,包括其中的一些語法,基本上都是一樣的?;蛘哂妹缊F的mpvue框架,那就根本不用學習小程序的語法了,寫起來跟vue一樣。但是我們開發的時候沒有用框架,用的是原生的微信小程序語言,開發起來也很easy。而且微信小程序有很多自己的API,比如圖片上傳、下載、音頻等等,項目中用到的時候再找文檔就來得及。
 
這次開發的難點,也是微信小程序的難點,應該就是在登錄了。如果把登錄流程弄明白了,在開發其他的功能,基本上就是時間的問題了。
 
難點:微信小程序登錄
 
看了好多文檔關于登錄相關的介紹,下圖的介紹是比較詳細的過程,開發過程中也是采用的這個邏輯。只不過我們沒有獲取用戶的敏感信息,所以沒有7、8步驟。直接通過wx.getUserInfo()獲取到用戶名、頭像等信息即可滿足我們的需求。
 
登錄步驟
 
通過調用wx.login() API,成功后會拿到用戶的code信息
將code信息通過接口,傳給自己的后臺(不是微信的后臺),在服務端發起對微信后臺的請求,成功后拿到用戶登錄態信息,包括openid、session_key等。也就是通常所說的拿code換openid,這個openid是用戶的唯一標識。
自己的后臺,拿到openid、session_key等信息后,通過第三方加密,生成自己的session信息,返回給前端。
前端拿到第三方加密后的session后,通過wx.setStorage()保存在本地,以后的請求都需要攜帶這個經過第三方加密的session信息。
之后如果需要用戶重新登錄,先去檢查本地的session信息,如果存在,再用wx.checkSession()檢查是否在微信的服務器端過期。如果本地不存在或者已過期,則重新從步驟1開始走登錄流程。
登錄的代碼如下:
1.  wx.getStorage({
2.       key: "code",
3.       success: res => {
4.         wx.checkSession({
5.           success: res => {
6.             console.log("Session未過期,登陸狀態未失效");
7.           },
8.           fail: err => {
9.             // 重新登錄
10.             console.log("Session過期,重新登錄");
11.             loginAction();
12.           }
13.         });
14.       },
15.       fail: res => {
16.         console.log("無code信息,調用登錄接口獲取code");
17.         loginAction();
18.       }
19.     });
登錄的流程圖如下:
注意事項
1. npm這么容易,install個包用用?
微信小程序沒有包管理這一說(但是最新版本的好像支持npm了),所以想要用到別的庫里的組件,只能找到源碼,copy過來。
2. 既然openid是唯一的,那我為什么不能用openid作為憑證,還要麻煩的用個第三方session
有可能造成數據越權。比如今天我通過我的手機登錄了微信,打開了小程序。但是明天有個朋友想用我的手機登一下微信。如果用openid作為登錄憑證,登錄小程序的時候檢測到openid已經存在,所以不會再走登錄過程,這樣我的數據就讓我的朋友看到了。所以還是要按照官方推薦的步驟來。
3. 本地啟服務,如何通過localhost訪問服務端接口?
微信小程序默認都是https請求,如果本地開發聯調,需要在開發者工具 -> 項目設置里,勾選上【不校驗合法域名、web-view(業務域名)、TLS 版本以及 HTTPS 證書】,這樣就可以愉快的使用localhost訪問服務端了。
4. textarea組件如何清空
一個常用的使用場景,用戶反饋里,用戶巴拉巴拉吐槽完,點擊確認發送成功后,為了防止用戶再次重復提交,需要將textarea中的數據清空。
用過vue的大家都知道,綁定一個字段,當成功后將這個字段賦值為空就好了。but,微信小程序可不干。
微信小程序文檔中這樣說明:不建議在多行文本上對用戶的輸入進行修改,所以 textarea 的 bindinput 處理函數并不會將返回值反映到 textarea 上。
如何解決呢。可以給textarea綁定一個value值。用form表單去提交。成功后將value綁定的值清空就可以了。
具體代碼如下:
1. <form bindsubmit="bindSubmit">
2.     <textarea placeholder="如果您對我們有任何建議或意見,請在此處向我們提交,期待您的寶貴建議。" name="feedbackContent" value="{{feedbackContent}}" bindinput="bindTextAreaInput" />
3.     <button class="submit-btn" form-type="submit" disabled="{{feedbackContent.length == 0 || btnLoading}}" loading="{{btnLoading}}" value="{{feedbackContent}}">
4.         提交
5.     </button>
6. </form>
7.  
8. bindTextAreaInput: function(e) {
9.     this.setData({
10.       feedbackContent: e.detail.value
11.     });
12. },
13.  
14. bindSubmit: function(e) {
15.     this.setData({
16.       btnLoading: true
17.     });
18.     addFeedbackRequest({
19.       content: e.detail.value.feedbackContent.trim()
20.     }).then(res => {
21.       if (res.success) {
22.         this.setData({
23.           btnLoading: false,
24.           feedbackContent: ""
25.         });
26.         this.showToast("提交成功,感謝您的反饋");
27.       } else {
28.         console.log("fail");
29.         this.showToast("提交失敗,請稍后再試");
30.       }
31.     });
32.   },
5. 有關圖片的引用問題
給頁面添加背景是,如果通過background屬性來添加,抱歉,那你不能引用本地的圖片,只能引用經過base64轉碼的或者網上的圖片。
小程序的文檔上有說,本地資源是無法通過css獲取的。但是通過image的src屬性引用的圖片,則沒有這個限制。
6. navigateTo層級不能超過5級
文檔上說明:為了不讓用戶在使用小程序時造成困擾,我們規定頁面路徑只能是五層,請盡量避免多層級的交互方式。
使用wx.navigateTo()的時候,規定層級不能超過5級。如果超過5級,頁面就出錯了。但wx.redirectTo()則無此限制。
注意:
wx.navigateTo()是保留當前頁面,跳轉到應用內的某個頁面,使用 wx.navigateBack 可以返回到原頁面
wx.redirectTo()是關閉當前頁面,跳轉到應用內的某個頁面。
7. 統一封裝請求,在header中攜帶session信息
wx.request()是發送請求的api,如果每個request請求都在header中重新一份session信息,一定很麻煩。所以基本上前端都會封裝一個新的請求函數,包括攜帶session信息,處理錯誤接口等功能。具體代碼如下:
1. const httpRequest = data => {
2.     return new Promise(function(resolve, reject) {
3.         console.log("http request", data.url);
4.         let code = "";
5.         wx.getStorage({
6.             key: "code",
7.             success: res => {
8.                 code = res.data;
9.                 console.log("http request success", code);
10.                 //發起網絡請求
11.                 wx.request({
12.                     url: data.url,
13.                     data: { ...data.data },
14.                     method: data.method,
15.                     header: {
16.                         code: code,
17.                         "content-type": "application/x-www-form-urlencoded"
18.                     },
19.                     success: function(res) {
20.                         if (res.data.success) {
21.                             resolve(res.data);
22.                         } else {
23.                             // console.log(JSON.stringify(res));
24.                             if (res.data.errorCode == 100) {
25.                                 goBackIndex();
26.                             }
27.                             reject(res.data);
28.                         }
29.                     },
30.                     fail: function(res) {
31.                         console.log(JSON.stringify(res));
32.                         if (res.data.errorCode == 100) {
33.                             goBackIndex();
34.                         }
35.                         reject(res);
36.                     }
37.                 });
38.             },
39.             fail: res => {
40.                 console.log("http request failed", code);
41.                 console.log("not found code in storage");
42.                 goBackIndex();
43.             }
44.         });
45.     });
46. };
 

相關文章

IT外包服務
二維碼 關閉
主站蜘蛛池模板: 男人的天堂色_欧美日韩色_一性一交一伦一色一按—摩_久久婷婷五月综合色和啪_日本欧洲国产一区二区_www.色99_av网站播放_91影库_91影库免费视频-91影库影院 | 日韩欧国产精品一区综合无码_亚洲视频日本有码中文_日韩有码一区_免费在线观看黄视频_一区二区三区色_性xxxxfreexxxxx欧美牲交v_美女露出奶头扒开尿口免费网站_91精品大片 | 亚洲夜夜性无码_国产欧美日韩久久久久_亚洲无嘛_成人你懂的_久久视频在线_成人美女视频免费_国产精品老熟女露脸视频_精品亚洲成a人无码成a在线观看 | 无码精品人妻一区二区三区九里奈_成人精品一区二区三区_四虎影视永久地址_爽爽影院线观看免费_伊人久久大香线蕉综合影院首页_国产色亚洲_日本老熟妇乱_好了av四色综合网站 | 京香一区二区三区_欧美80老妇毛片_久色青青_高清欧美一区二区免费影视_在线成人免费_依人99_久久精品91久久久久久再现_九九99九九精彩9 | 欧美另类高清ZO欧美_老太BBwwBBww高潮_最新91视频_午夜精品久久久久久久久久久久久久_欧美一区二区视频高清专区_午夜无码A级毛片免费视频_全国最大的成人网_亚洲综合日韩精品欧美国产 | 18禁黄无遮挡网站免费_日本亚洲精品无码专区_狠狠爱免费视频_亚洲一区二区三区四区五区乱码_在线观看免费视频18_农村妇女野战bbxxx_欧美性生活精品_JK制服白丝超短裙自慰 | 黑人狂躁日本妞hd_亚洲欧洲日产国码无码_日韩一区二区a片免费观看_久久之久久_日本va在线视频播放_欧美日韩欧美_在线免费观看国产_自拍偷拍99 | 国产精品美女久久久婷婷网站_久欠精品国国产99国产精2021_国产精品久久久久久久久果冻传媒_去看片在线_国产一级淫片a级在线播放_日本91av视频_欧美女优一区_野花视频最新免费完整在线观看 | 99久久婷婷国产一区二区三区_性国产丰满麻豆videosex_99久久国产综合精品无码_国产一区99_就去色成人网_免费毛片一区二区三区久久久_国产四区在线观看_激情第一区仑乱 | 色窝窝51精品国产人妻消防_免费无码成人片在线观看软件_麻豆porn_午夜理论片yy44880影院_免费无毒的黄色_国产日韩一区二区三免费高清_日本1区2区_亚洲自拍99 | 男女av免费观看_蜜臀一二三_懂色av色香蕉一区二区蜜桃_japanese爆乳boobvideos巨大_青青草成人自拍_成人免费ā片在线观看_1000部啪啪未满十八勿入免费_最近中文字幕完整在线看一 | 不卡视频一二三区_爱逼爱操综合网_一区二区在线免费播放_久久伊人av_久久九九国产精品怡红院_男女一边摸一边做爽爽的免费阅读_久久精品无码专区免费青青_91精品啪 | 小明成人永久免费视频在线观看_中文在线国产_一区二区三区AV高清免费波多_亚洲一级毛片在线_成人av毛片_亚洲伦理在线_野花社区观看在线www官网_国产亚洲AV无码专区A∨麻豆 | 91精品啪在线观看国产足疗_特级毛片全部免费播放_日本一区二区三区免费在线_国产va在线观看_中文字幕日韩综合av_91在线视频网址_一级片在线免费看_久久久91精品国产一区二区三区 | 久久久久久臀欲欧美日韩_国产免费片_五月久久六月婷婷俺也去_久草在线欧美_一级片片_91大神精品视频_91麻豆精品国产91久久久_国产欧美精品 | brazzershd欧美情趣丝袜_一区二区国产在线观看_亚洲国产精品点击进入_免费一二三区_自拍偷拍亚洲一区_亚洲国产精品一区二区美利坚_好男人在线社区www在线影院_亚洲国产成人精品女人久久久 | 日本理论在线播放_国产女主播一区二区_av在线1_成网站在线观看_国产精品免费在线播放_大二情侣宾馆啪实拍_91桃色免费观看_国产欧洲精品视频 | 成人无码A区在线观看视频_亚洲一二三四果冻传媒_欧美香蕉爽爽人人爽_伊人网91_极品国产91在线网站_丁香五月综合久久激情_亚洲在人线_精品一品国产午夜福利视频 | 伊人大杳焦在久久综合网_狠狠爱婷婷_麻豆产精国品免费入口_天干天干天啪啪夜爽爽AV_免费三区_5c5c5c5精品视频在线观看_欧美网站免费_国产a级大片 | 国产厕所精品_亚洲成人第一网站_中字无码av高清在线播放_亚洲国产另类久久久精品网站_99精品国产闺蜜国产在线闺蜜_久久亚洲AV成人无码国产_欧美日韩国产高清视频_一区二区三区999 | 中文AV无码人妻一区二区三区_超碰在线观看中文字幕_宅男色影视亚洲人在线_国产色视频一区二区三区_永久免费网站看黄yyy45视频_国产精品国产三级国产普通话_www.91桃色_一二三国产视频 | 69re视频_最近更新中文字幕视频_护士奶头又白又大又好模_亚洲最新版av无码中文字幕一区_最近最好看的2018中文字幕_一区二区视频_熟妇女领导呻吟疯狂_亚洲成A∨人片在线观看无码 | 亚洲人a成www在线影院_久久动漫在线观看_亚洲再线_AV无码爆乳护士在线播放_五月天婷亚洲天综合网鲁鲁鲁_japansex久久高清精品_成人cosplay福利网站18禁_国产欧美日韩亚洲更新 | 91嫩草国产线免费观看_欧美日产亚洲国产精品_国产视频午夜_成人永久免费网站在线观看_逼逼操操_国产精品国产精品不卡_国产98色在线_亚洲精品一区国产精品 男人j桶进女人p无遮挡免费的视频_亚洲kkk4444在线观看_极品少妇被啪到呻吟喷水_国产精品臀控福利在线观看_97视频国产自在自线2020_视频h在线_国产成人午夜福利r在线观看观看_午夜福利啪啪片 | 国产91精品久久久久久_天天摸天天做天天爽天天弄_欧美在线观看视频一区_人人妻人人超人人_日韩无码专区_视频一区二区视频_日日橹狠狠爱欧美二区免费视频_好男人www在线影院官网 | 5g国产精品影院天天5g天天爽_欧美又大又粗无码视频_国产综合色一区二区三区_天天爽天天_九九精品在线视频_色片免费在线观看_国产精品一区二区三区不卡_久久久久久久一区 | av久久网站_中文字幕永久免费_免费人成激情视频在线观看冫_狠狠丁香_久久伊人综合_色婷婷综合久久久中字幕精品久久_亚洲免费视频网址_深夜福利亚洲 | 国产亚洲情侣一区二区无_亚洲精品视频免费观看_樱桃视频大全免费观看_撕开奶罩揉吮奶头高潮av_成人免费精品网站在线观看影片_va在线观看_欧美爆乳精品国产一区二区三区_久久久久亚洲AV无码A片男男 | 真实国产乱人伦在线视频播放_国产一区二区免费网站_青娱乐这里只有精品_亚洲国产天堂一区二区三区_久久第三页_精品熟人妻一区二区三区四区不卡_日本a片大尺度高潮无码_午夜视频在线观看一区 | 精品成人_国产色婷婷久久99精品91_国产一级特黄毛片在线毛片_jizz日本亚洲少妇_日本中文字幕久久_视频免费观看大全_欧美国产乱视频_国产精品免费无遮挡无码永久视频 | 国内老司机精品视频在线播出_国产下药迷倒白嫩丰满美女BD_国产精品久久久久久TV_国产办公室秘书无码精品_亚洲专区一_免费看黄a级毛片_少女视频哔哩哔哩免费观看_妇女站着交性打野战 | 日本高清成人免费播放_中文乱码字幕在线中文乱码_成人一级毛片_一区二区成人在线_欧美一区二区三区在线观看视频_欧美一级二级视频_三级a做爰一女二男视频_少妇极品熟妇人妻 | 欧美激情高潮无遮挡_成人无码区免费a片www_成年女人免费视频播放人_2015天堂网_精品一二三区视频_久久久天堂国产精品女人_成人无码潮喷在线观看_亚洲AV永久无码天堂网毛片 | 中文字幕在线影视_久久夜久久_激情sese_99re在线_麻豆传煤入口免费进入2023_人人爽人人看_91香蕉视频在线_91福利免费观看 | 少妇把腿扒开让我舔18_video日本老熟妇_亚洲欧美成人影院_亚洲av无码网站yw尤物_国产h视频在线观看播放_某机关少妇下班酒店在线播放_经典三级欧美在线播放_亚洲综合视频在线 | 久久久久影院美女国产主播_无套中出丰满人妻无码_亚洲中文字幕无码一久久区_国产亚洲精品精品精品_91沈先生在线观看高清_裸体美女扒尿口喷白浆_免费h片在线_伊人色综合一区二区三区影院视频 | 特级毛片a级毛片在线播放www_亚洲综合视频网_日日噜噜夜夜狠狠久久av小说_337P大胆日本欧美人体艺术噜噜噜_天堂在线最新版资源www中文_91tv免费视频_久久九九免费_97香蕉久久夜色精品国产 | 国产亚洲精品AA片在线观看网站_黄色免费在线观看网址_九一亚色_91蝌蚪九色_末发育娇小性色xxxxx视频_国产精品久久久免费看_九九精视频_免费很黄无遮挡的视频 | 日本a优视频_AV日韩人妻黑人综合无码_亚洲精品永久视频_一级片日韩_www.噜噜噜_2018天天干夜夜操_内谢69ⅹxxx免费视频_69久久无码一区人妻A片 | 91女神在线观看_国产精品激情久久久久久久_精品国产欧美_日日干夜夜操高清视频_成人avav_日韩经典一区二区_成人在线观看一区二区_日产一级片 |