本篇文章想跟大家分享下微信小程序實戰開發:我們公司湖北誠萬興科技最近剛幫客戶定制開發、目前已上線的“哎咆課堂”微信小程序的開發經驗分享。首先大概介紹下這個小程序所涉及到的主要技術點:微信登錄、微信支付、微信小程序Flex布局以及微信小程序視頻播放器的使用。
首先,任何一個微信小程序開發之前都需要先設計界面效果圖微信小程序實戰開發;既然是仿網易云課堂App,那么界面上都有不少地方是借鑒其布局排版,先一睹為快看下首頁和課程分類界面的效果吧
界面效果圖確定,下面就開始做程序開發,這也是本文要講的重點,主要經驗總結如下:
1.使用"that"
建議在 page{}外面定義一個that變量,然后在中賦值為this,以后所有的地方,都可以使用that,這樣就避免有些地方,this并不是指向page的上下文對象
//上下文對象
var that;
page({
: function (options)
{
// 頁面初始化 options為頁面跳轉所帶來的參數
that = this;
}
...
that.setData({ xxx: xxx, })
})
2.page的生命周期
只有中有options參數,可以獲取頁面傳值等等,只會執行一次
但是onShow可以每次切換頁面的時候執行,所以,需要每次刷新頁面的數據請求,可以放在onShow中,測試過,性能體驗基本無影響
page的生命周期沒有Android那么豐富,頁面之間傳值也有一定的限制。
可以通過普通的url的傳值方式傳值,xxx?key = value ,但是要注意:我們傳的值其實是相當于字符串和url拼接在一起,請不要直接傳一個對象,因為對象沒有toString方法。
傳遞json對象的步驟為:
把json對象變成字符串,如果本身就是那就直接用,如果是json對象,需要 parseString(json)
和url進行參數拼接?key=value
取得時候在的options里面取出,: function (options) {var value= options.key}
然后JSON.stringify(value)轉為json對象使用
3.頁面間跳轉
從主頁跳轉一個新的界面 新界面處理完邏輯 成功與否 結束之后怎么通知 主頁結果?這種情況,一般是沒有辦法解決的。經過測試,如果你想要從二級非主頁界面直接navigator打開主頁,是不行的,會報錯。所以,我們采用的策略是:二級界面處理完數據之后,直接返回,然后在主頁界面重新拉取數據。所以會出現,我們的請求接口是在onShow方法里面執行的。因為只會執行一次
4.wxml頁面布局及綁定
text標簽可以使用bindtap
再強調一下 在標簽中使用data-pro_name="value",在對應對象中可以通過e.currentTarget.dataset.pro_name獲得,這種一般使用場景為 你可以給你所點擊或者綁定事件的view設置一個數據,比如你一個picker里面有5個view,就可以綁定每個view不同的值,在觸發事件的時候取到相應的值
如果你想要顯隱view你可以通過wx:if="true/false"來處理,但是這樣的話,如果為false,page不會去渲染這個view,它所在的位置空間也不會預留,假如下面的view就會往上排。如果想要留存它的位置空間,可以修改其style樣式來解決
style="visibility:{{isShow?'visible':'hidden'}}"
5.統一公共業務封裝及框架
如上圖是“哎咆課堂-微信小程序”公共業務封裝相關類,這樣的好處在于:減少代碼冗余,方便后期維護,比如:
http.js:處理http請求的邏輯封裝
storage.js:小程序中統一的緩存數據讀寫
wx_api.js:微信小程序相關api的邏輯封裝,如:微信登錄、會話有效期驗證、獲取用戶信息等
需要注意的是:js文件要盡量保持業務獨立,不能相互引用依賴微信小程序實戰開發!
6.其它技巧總結
如上圖,即使整個小程序中所有頁面都引用http.js文件,即引用多次,紅色標注的代碼只會執行一次!
好了,就寫到這兒,希望湖北誠萬興科技這篇文章對您能有所幫助,如果您有問題,可留言或直接搜索湖北誠萬興科技官網跟我們聯系!
-
互聯網假新聞的特征(互聯網傳播條件下,虛假新聞傳播特點)
網絡傳播互聯網假新聞的特征的特性決定了它與傳統大眾傳播方式截然不同互聯網假新聞的特征,也就不可避免地帶來了一系列負面作用,如意識形態和文化滲透,假新聞假信息傳播,色情泛...
-
車禍網站建設(車禍視頻哪個網站)
1、1注冊域名 2申請虛擬主機 域名好比門牌號碼車禍網站建設,虛擬主機是房子,網站程序是家具需要找個房子,讓家具有地方放3下載網站程序,或者找人制作網站程序這一步驟,就是制作家...
-
北京小程序開發介紹服務(北京小程序開發京小程序開發)
技術開發公司為客戶梳理北京小程序開發介紹服務的需求文檔 6售后服務 在小程序上線后,正規的開發公司會配備專業的售后服務售后團隊,進行技術指導項目完成交付后,售后團隊會繼...
-
互聯網農業種植的新聞評論的簡單介紹
ldquo共享農莊rdquo是玉古村在推進鄉村振興過程中依靠群眾智慧探索出的產業發展路徑,利用村里閑置的房舍改造成農莊和鄉村民宿,并吸納村民集資入股,共同建設鄉村產業,享受收益分...
-
安徽互聯網醫院新聞發布會(安徽醫科大學第一附屬醫院互聯網醫院)
1、居民可以更好安徽互聯網醫院新聞發布會的享受到互聯網醫院的服務效率該平臺開展了視頻圖文問診安徽互聯網醫院新聞發布會,智能預問診安徽互聯網醫院新聞發布會,在線處方等...