不廢話,現(xiàn)有需求小程序 省市 二級(jí)picker選擇器
由于本人用的mpvue進(jìn)行開發(fā)小程序快鱼,mpvue的特性基本與vue保持一致隘道,有興趣的可以自行了解。先展示下效果圖:
因?yàn)閙pvue中支持小程序原生組件魏铅,這里我用的是微信官方picker,如代碼(此處代碼無法粘貼坚芜,直接上代碼貼圖)
解釋下:bindchange得寫成@change格式览芳,當(dāng)picker點(diǎn)擊確定時(shí)觸發(fā)。bindcolumnchange寫成@columnchange鸿竖,當(dāng)選擇picker中的省份或市時(shí)觸發(fā)沧竟。
最重要的是此處的幾個(gè)數(shù)組,主要思想類似后臺(tái)根據(jù)某id查詢另一個(gè)表中的id等于這個(gè)id的所有數(shù)據(jù)缚忧,再賦給空數(shù)組悟泵,顯示在picker中,如圖:
類似后臺(tái)多表關(guān)聯(lián)
數(shù)據(jù)哪里來闪水?都是我本地json數(shù)據(jù)格式糕非,數(shù)據(jù)格式如圖(最后附上省市數(shù)據(jù)福建):
對(duì)數(shù)據(jù)進(jìn)行處理:
最后我們需要做的就是,當(dāng)選擇picker中省份時(shí)球榆,根據(jù)當(dāng)前省份的id和市的id對(duì)應(yīng)起來朽肥,當(dāng)市的id等于省份id,就將市加入到空數(shù)組芜果,并賦值給picker中市對(duì)應(yīng)的數(shù)組鞠呈,如圖:
結(jié)束語:看過官方文檔,解釋很模糊右钾,看過網(wǎng)上其他人分享的方法蚁吝,比較麻煩旱爆,本人理解能力有限,無法攻克窘茁,隨即自己想辦法寫出這個(gè)二級(jí)picker怀伦,此二級(jí)picker不僅可用于省市選擇,稍加改造也可用于其他二級(jí)picker山林。
這個(gè)方法不是最簡單的房待,但很容易理解。還有很多可以優(yōu)化的地方驼抹,歡迎指出桑孩,共同進(jìn)步!
最后的最后框冀,需要city的json數(shù)據(jù)流椒,百度云地址如下:
鏈接:https://pan.baidu.com/s/1YYFq5aot0SqEkjZkX2piog 密碼:if0y
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者