2018年12月我開始著手做一個車生活app的項目,到現(xiàn)在除去春節(jié)放假也有兩個月的時間,從開始對app開發(fā)一無所知,到后來制作出一個相對完整的版本。中間學習了很多也遇到了很多問題,現(xiàn)在對中間的技術問題進行總結(jié)。
一.學習mui框架
之前做過webapp,vue用過一段時間,做過小程序,但是這種獨立的h5+app還沒有玩過。mui是我接觸的第一個接近原生效果的手機端ui框架,之前看過一點,但是沒有在實戰(zhàn)中用過。
1.mui的官網(wǎng)文檔讓人詬病的一點就是不夠完善,諸如mui-modal這樣很多組件的用法在文檔中都是沒有的,需要在官方demo中仔細查找。
2.dtpicker選擇器:在一個頁面放置多個dtpicker選擇器只有第一個生效但是后面幾個不彈出。找了半天沒有找到原因,后來發(fā)現(xiàn)把選擇器改為document.querySelector()就可以了。

3.mui.fire():通過plus.webview.getWebviewById( id );來獲取指定頁面的id;console.log出plus.webview.all();獲取所有的窗口,取得數(shù)組對象,查看目標窗口的路徑。
二.html5+API Reference
(1)調(diào)取高德地圖api實現(xiàn)地圖搜索導航與地圖選點導航功能:




(2)車型選擇功能


針對這種車型選擇功能,借鑒了第三方平臺的代碼。現(xiàn)在對功能實現(xiàn)進行了總結(jié):
1.車型數(shù)據(jù)獲取,數(shù)據(jù)的獲取主要是通過從制定url抓取的數(shù)據(jù),不做多說。
2.根據(jù)字母順序排序,選擇車型:在這里引用了mui.simpledlist.js。鏈接: https://pan.baidu.com/s/1FIuW1DzpZ2fGAogaiuUWuw 提取碼: n8xf?
(3)nativeUi
1.使用原生nativeui的樣式組件:

2.對于ajax規(guī)范化書寫;
在原來的項目中一直都沒有對ajax做過非常規(guī)范化的處理,在這里學習了大佬的經(jīng)驗,對ajax進行了規(guī)范化的處理,對于項目的運行和確認前后端錯誤有好處。

備注:APP_DOMAIN為自定義服務器地址; mklog()為下列函數(shù);

3.省份選擇:使用mui-modal


鏈接:https://pan.baidu.com/s/1pN2DHrXf_VCIR_Hd7Y0d5Q? ? 提取碼:xmbi
4.字符串拼接,動態(tài)創(chuàng)建節(jié)點? 的新方式
之前從后臺獲取數(shù)據(jù)之后都是使用字符串拼接的方式動態(tài)的創(chuàng)建節(jié)點,但是這種方式的局限在于非常繁瑣,es6使用``之后不用考慮引號的問題,但是仍然存在一個變量寫錯而影響整體性能的問題。在這里改用了一種新的方式去拼接字符串創(chuàng)建節(jié)點:
artTemplate? >>>? javascript模板引擎
模板調(diào)試器可以精確定位到引發(fā)渲染錯誤的模板語句,解決了編寫模板過程中無法調(diào)試的痛苦,讓開發(fā)變得高效,也避免了因為單個模板出錯導致整個應用崩潰的情況發(fā)生。

