微信手機網(wǎng)站開(kāi)發(fā)總結范文
微信手機網(wǎng)站開(kāi)發(fā)總結范文
最近在開(kāi)發(fā)中遇到了很多問(wèn)題,比如ajax請求,大量使用ajax提交數據會(huì )發(fā)現經(jīng)常出現重復性數據,也就是說(shuō)用戶(hù)提交了兩次,這個(gè)問(wèn)題的根本在于手機端網(wǎng)速過(guò)慢,導致用戶(hù)以為沒(méi)有點(diǎn)擊上,就會(huì )在點(diǎn)擊一次,所以這個(gè)時(shí)候我們必須要加上“鎖屏”,或者提示用戶(hù)數據正在提交當中,由于以前沒(méi)有移動(dòng)端開(kāi)發(fā)的經(jīng)驗所以倒置出現了很多重復的數據,這個(gè)問(wèn)題應該算比較嚴重的 一個(gè)問(wèn)題。
另外一個(gè)問(wèn)題就是還網(wǎng)速問(wèn)題,比如最近開(kāi)發(fā)的微信訂餐模塊,在首次加載的時(shí)候有很多產(chǎn)品分類(lèi)、產(chǎn)品,所有的產(chǎn)品都是通過(guò)ajax來(lái)獲取的,這樣有存在了一個(gè)問(wèn)題,當讓我們也是為了追求極致的用戶(hù)體驗,比如用戶(hù)點(diǎn)擊西餐分的時(shí)候的時(shí)候我們去請求服務(wù)器來(lái)獲取西餐中的產(chǎn)品,點(diǎn)擊中餐獲取中餐中的數據,當下次在點(diǎn)擊中餐的時(shí)候呢?還是請求服務(wù)器嗎?這樣是不合理的,用戶(hù)滿(mǎn)意必要再次去浪費流量了,所以我們就需要在用戶(hù)端做一個(gè)緩存,當用戶(hù)下次請求的時(shí)候直接走本地緩存不在請求服務(wù)器了。這樣就實(shí)現了一次加載不用多次加載了。
這樣雖然加了一個(gè)緩存層但是還是不能搞滿(mǎn)足需求,現在某個(gè)神奇的國度的網(wǎng)速還是很慢的,3G普及率還不是很高,4G也才剛出來(lái)只是一個(gè)噱頭而已,4G的手機也不多,所以我們除了做緩存還是不夠的,我們需要做一些其他工作來(lái)讓操作體驗度更高。
以訂餐來(lái)舉例:
1、產(chǎn)品列表
2、產(chǎn)品分類(lèi)
用戶(hù)首次進(jìn)來(lái)我們將第一個(gè)分類(lèi)中的產(chǎn)品都加載顯示出來(lái)(PS:直接后端語(yǔ)言打印,不要用ajax請求,ajax還會(huì )發(fā)送一次http請求的還不如直接加載出來(lái),當頁(yè)面出來(lái)的時(shí)候就直接顯示了),這個(gè)時(shí)候我們在代碼中協(xié)商window.onload = function(){} 用js來(lái)監測所有資源是否已經(jīng)加載完成了,如果已經(jīng)加載完成,那么這個(gè)時(shí)候我們需要發(fā)送下一分類(lèi)中的所有產(chǎn)品了并將他緩存,這個(gè)時(shí)候對用戶(hù)來(lái)說(shuō)他是察覺(jué)不到的,其實(shí)我們已經(jīng)在請求數據了,一直將我們所有需要的數據加載進(jìn)來(lái)。這樣用戶(hù)在想看下一個(gè)分類(lèi)中的產(chǎn)品的時(shí)候就不需要在等待了。這樣提前加載可能有會(huì )說(shuō),這樣如果用戶(hù)不需要看你其他分類(lèi)的產(chǎn)品你這不是浪費嗎?難道你想用戶(hù)在等待嗎?我不想看到,我需要給用戶(hù)一個(gè)更加流程的操作。這些我們浪費的流量我們可以從其他地方進(jìn)行補回的,比如:壓縮頁(yè)面 源碼,減少http請求,不實(shí)用jquery而是去封裝自己的原生態(tài)的js(這個(gè)就根據你自己的業(yè)務(wù)需求吧),總之能省的就都省了,我們們的目的是將pc做成app的操作體驗。
【微信手機網(wǎng)站開(kāi)發(fā)總結】相關(guān)文章:
單片機實(shí)訓總結(精選11篇)02-19
四年機下冊英語(yǔ)教學(xué)總結02-14
挖掘裝載機作業(yè)安全技術(shù)措施總結(精選5篇)04-03
開(kāi)發(fā)區管委會(huì )主任的個(gè)人述職述廉報告范文03-20
開(kāi)發(fā)區副主任述職述廉報告范文(精選12篇)11-07
小學(xué)教育教學(xué)微變革、微創(chuàng )新行動(dòng)方案08-06