寫在最前面
微信小程序自九月份推出內(nèi)測(cè)資格以來(lái),經(jīng)歷了輿論熱潮到現(xiàn)在看似冷清,但并不意味著大家不那么關(guān)注或者不關(guān)注了。我想不管是否有內(nèi)測(cè)資格,只要是感興趣的開(kāi)發(fā)者已經(jīng)進(jìn)入潛心耕耘產(chǎn)品的階段了,至少是靜下心來(lái)思考與學(xué)習(xí)。如果對(duì)微信小程序的前途和定位有什么疑惑,可以看看這篇文章http://lib.csdn.net/article/wechat/46742。
下面從字母a開(kāi)始編號(hào)的內(nèi)容主要作為后續(xù)學(xué)習(xí)與思考后對(duì)文章做的更新,包括項(xiàng)目的改進(jìn)、觀點(diǎn)的補(bǔ)充等,所以建議大家先將整篇文章看完再來(lái)瀏覽這部分,會(huì)有不一樣的收獲。
a. 3.1.2節(jié)index.js實(shí)現(xiàn)火車票查詢事件的響應(yīng)函數(shù)getTrainInfo時(shí),直接在函數(shù)體中調(diào)用wx.request方法開(kāi)始網(wǎng)絡(luò)請(qǐng)求。但是后面在閱讀了別人的代碼后發(fā)現(xiàn),可以將常用的url、apikey、request等常量和方法抽象出來(lái),定義到獨(dú)立的文件當(dāng)中。于是在根目錄下新建requests目錄,其中新建文件request與api文件(js格式),api用來(lái)定義網(wǎng)路請(qǐng)求所需的url、apikey等常量信息,request用來(lái)定義網(wǎng)絡(luò)請(qǐng)求方法(可以多種形式)。這樣在不同頁(yè)面中請(qǐng)求不同網(wǎng)絡(luò)數(shù)據(jù)時(shí),只要傳不同的參數(shù)即可,調(diào)用的方法是共用的,提高了可讀性與維護(hù)性。這部分改變已經(jīng)同步更新到了Github。
b. 3.1.2和3.2.2節(jié)都提到了,將JSON格式數(shù)據(jù)作為url參數(shù)傳遞前,需要先轉(zhuǎn)化為String類型,然后目標(biāo)頁(yè)面讀取數(shù)據(jù)時(shí)需要將String類型對(duì)象轉(zhuǎn)回到JSON格式。如果不想這么復(fù)雜,而又只是以學(xué)習(xí)為目的的話,可以借助app.js中定義的全局變量來(lái)承載數(shù)據(jù),因?yàn)轫?xiàng)目的任何地方都可以獲取這種變量值。
app中添加相關(guān)變量trainList:
1 globalData:{ 2 userInfo:null, 3 trainList:[] //火車票信息列表 4 }
index頁(yè)面獲取網(wǎng)絡(luò)請(qǐng)求返回?cái)?shù)據(jù)后直接對(duì)全局變量賦值:
1 app.globalData.trainList = res.data.data.trainList;
train頁(yè)面獲?。?/p>
1 this.setData({ 2 trainList: app.globalData.trainList, 3 });
這樣就避免了轉(zhuǎn)化的步驟,但是如果是正規(guī)大型項(xiàng)目,還是建議采用最合適的處理方式,畢竟全局變量是針對(duì)整個(gè)項(xiàng)目的。
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無(wú)線安全]玩轉(zhuǎn)無(wú)線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問(wèn)題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來(lái)看看(二) 2017-07-26