Real--微信小程序開發之(zhī)路(二) - 新聞資訊 - 雲南小程序開發|雲南軟件開發|雲南網站建設-昆明融晨信息技術有限公司

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不(bù)管是(shì)網站,軟件還是(shì)小程序,都要(yào / yāo)直接或間接能爲(wéi / wèi)您産生價值,我們在(zài)追求其視覺表現的(de)同時(shí),更側重于(yú)功能的(de)便捷,營銷的(de)便利,運營的(de)高效,讓網站成爲(wéi / wèi)營銷工具,讓軟件能切實提升企業内部管理水平和(hé / huò)效率。優秀的(de)程序爲(wéi / wèi)後期升級提供便捷的(de)支持!

您當前位置>首頁 » 新聞資訊 » 小程序相關 >

Real--微信小程序開發之(zhī)路(二)

發表時(shí)間:2021-4-12

發布人(rén):融晨科技

浏覽次數:46

上(shàng)周由于(yú)國(guó)慶小長假的(de)緣故未能及時(shí)更新文章,在(zài)此說(shuō)聲抱歉,之(zhī)後将繼續周更。

好久沒有寫有關微信小程序的(de)文章了(le/liǎo),今天繼續講講小程序的(de)一些容易踩到(dào)的(de)“坑”。

一、圖片上(shàng)傳須使用wx.uploadFile(),而(ér)不(bù)是(shì)使用wx.request()

微信小程序專門提供了(le/liǎo)一個(gè)用于(yú)上(shàng)傳文件的(de)API,那就(jiù)是(shì)wx.uploadFile()。如果想要(yào / yāo)上(shàng)傳圖片,同樣得用該方法,并且一般情況下都是(shì)要(yào / yāo)與wx.chooseImage()結合使用。通過wx.chooseImage()可以(yǐ)選擇本地(dì / de)圖片或者直接拍照而(ér)返回一個(gè)臨時(shí)的(de)圖片路徑,再将這(zhè)個(gè)臨時(shí)路徑傳入wx.uploadFile()中後通過第三方服務器返回線上(shàng)路徑,這(zhè)樣之(zhī)後我們才能随時(shí)獲取到(dào)這(zhè)張圖片。

當然,有時(shí)候我們也(yě)可能在(zài)提交表單的(de)時(shí)候需要(yào / yāo)提交圖片,這(zhè)時(shí)候我們才要(yào / yāo)用到(dào)wx.request(),提交的(de)圖片路徑就(jiù)是(shì)通過wx.uploadFile()返回的(de)線上(shàng)路徑,而(ér)不(bù)是(shì)通過wx.chooseImage()返回的(de)臨時(shí)路徑。

這(zhè)兩個(gè)方法的(de)具體用法可以(yǐ)直接參考開發文檔:https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-file.html#wxuploadfileobject。

二、微信小程序的(de)加載動畫家族

1. 下拉刷新動畫

① onPullDownRefresh()
在(zài) Page 中定義 onPullDownRefresh 處理函數,監聽該頁面用戶下拉刷新事件,需要(yào / yāo)用戶手動下拉才能觸發。

② enablePullDownRefresh
需要(yào / yāo)在(zài)config(文件後綴爲(wéi / wèi).json)的(de)window選項中設置enablePullDownRefresh爲(wéi / wèi)true後onPullDownRefresh()才有效。

③ wx.startPullDownRefresh()
開始下拉刷新,調用後觸發下拉刷新動畫,效果與用戶手動下拉刷新一緻,使用該方法無需用戶手動下拉也(yě)能觸發下拉刷新動畫。

④ wx.stopPullDownRefresh()
當處理完數據刷新後,wx.stopPullDownRefresh可以(yǐ)停止當前頁面的(de)下拉刷新動畫。

2. 導航條加載動畫

① wx.showNavigationBarLoading()
在(zài)當前頁面顯示導航條加載動畫。

② wx.hideNavigationBarLoading()
隐藏導航條加載動畫。

3. 提示框加載動畫

① wx.showLoading()
顯示 loading 提示框, 需主動調用wx.hideLoading()才能關閉提示框。

② wx.hideLoading()
隐藏 loading 提示框。

三、page.json隻能設置 app.json 中的(de) window 配置項的(de)内容,并且不(bù)能寫window這(zhè)個(gè)鍵

這(zhè)個(gè)“坑”看起來(lái)雖小,但是(shì)一旦你一不(bù)小心踩到(dào)了(le/liǎo),很可能很難發現問題所在(zài),因爲(wéi / wèi)就(jiù)算你在(zài)page.json中寫法與app.json一緻,也(yě)就(jiù)是(shì)說(shuō)把window這(zhè)個(gè)鍵也(yě)寫進去了(le/liǎo),小程序并不(bù)會報錯,隻是(shì)不(bù)會出(chū)現你想要(yào / yāo)的(de)效果。

比如,你隻想在(zài)某個(gè)頁面實現下拉刷新效果,那麽你在(zài)該頁面的(de) config 中可以(yǐ)這(zhè)樣配置:

{
  "navigationBarTitleText": "下拉刷新動畫",
  "enablePullDownRefresh": true
}

但是(shì),如果你一不(bù)小心在(zài)前面加了(le/liǎo)個(gè)"window":,那麽問題就(jiù)來(lái)了(le/liǎo),頁面這(zhè)時(shí)無法實現下拉刷新,然後你說(shuō)我明明配置了(le/liǎo)"enablePullDownRefresh": true啊,接着就(jiù)很有可能在(zài)這(zhè)個(gè)小問題上(shàng)糾結很久,所以(yǐ)需要(yào / yāo)謹記:page.json中不(bù)能寫window這(zhè)個(gè)鍵

四、微信小程序中含有Imoji圖片的(de)用戶昵稱存儲問題如何解決?

這(zhè)裏涉及後端數據庫的(de)問題,有時(shí)候提交表單時(shí)需要(yào / yāo)獲取用戶昵稱并提交到(dào)數據庫,但是(shì)有些用戶昵稱中會帶有Imoji圖片,這(zhè)時(shí)直接保存到(dào)數據庫可能會出(chū)現無法識别的(de)問題,解決方法是(shì)将數據庫字段格式改成utf8mb4格式就(jiù)好。

相關案例查看更多