最近一直在写小程序,上线以后老大告我,我们的地址选择只用地图来选择不能满足用户需求,还是得需要一个省市区选择器,好吧,本着用户是上帝,一切以用户用的爽为目的程序猿当然只能选择满足它了,于是就手动撸一个自定义组件省的以后折腾。关于自定义组件的概念定义我就不在这里赘述了,相信大家都已经阅读过文档了(文档写的还是很清楚的),下面我就直接上效果图了:
使用的时候,直接引入自定义组件
{ "usingComponents": { "nyz_area_picker": "../../Component/nyz_area_picker/nyz_area_picker" }}
wxml:
<nyz_area_picker show="{{show}}" bind:sureSelectArea="sureSelectAreaListener"></nyz_area_picker>js: Page({ data: { province:'', city:'', area:'', show:false }, sureSelectAreaListener:function(e){ var that = this; that.setData({ show: false, province: e.detail.currentTarget.dataset.province, city: e.detail.currentTarget.dataset.city, area: e.detail.currentTarget.dataset.area }) }, chooseAddress:function(){ console.log("xuanzedizhi") var that = this; that.setData({ show:true }) }})
属性值:
show:组件显示隐藏
maskShow:是否显示蒙层组件的js中别忘记引入area.js:
var areaTool = require('../../utils/area.js');如果代码包过大,可以将地区json串放到服务器,通过接口请求也可。组件源码及demo已经放在了github上,欢迎大家issue,github链接:https://github.com/Iterator1993/weapp_area_select
小程序













