微信小程序一个表单多个picker选择器
在某商的时候,我参与开发了至少有五个小程序。那个时候人少活多,而且头一次接触小程序,在临近上线时刻至少有三次通宵写代码。至今还记忆犹新,也非常感谢斌哥当时的帮助。/辛苦了
虽然我已经很久没接触微信小程序,但是小程序MVVM思想已经深入人心,也对我以后接触vue提供了理论基础。
一、微信小程序的MVVM思想
MVVM的设计思想:关注Model的变化,让MVVM框架去自动更新DOM的状态,从而把开发者从操作DOM的繁琐步骤中解脱出来!
微信小程序的前端架构设计,以及开发模式,充分参考了Vue、React这一类MVVM的前端开发框架,我们简单举几个例子:
比如通过data-bind进行数据双像绑定,就像极了Vue的设计风格;
再比如一些标签语法糖,列表循环:
1 | <!--wxml--> |
相信写过AngularJS 和 Vue的同学都不会陌生;
再比如,事件绑定:
1 | <view bindtap="add"> {{count}} </view> |
这和之前写js、html时代的操作DOM来实现页面效果,最大的不同就是所有的操作都是取操作数据、操作data通过data的改变来实现页面效果。
二、需求分析
点击增加出差详情,增加一个子项,这里需要注意的是在一个表单里面会有多个选择框。
当我们分析如何实现这个功能的时候,其实就是分析使用怎样的data数据结构来存储这个表单,通过对data数据的增加删除来实现动态功能。
如下所示:
1 | [ |
三、功能实现
- index.wxml
1 | <view> |
- index.js
1 | //index.js |