微信小程序的input组件因为没有双向绑定的功能,所以要监听input的值并更新到js中。
表单input一旦太多,每个input上绑定不同的监听事件会使代码变得冗杂不易阅读,所以需要建一个公共事件给所有input绑定上,通过data-x传值的方式绑定到不同变量中。
wxml:
<input type="text" data-model="userInfo.name" bindinput="inputWacth" /> <input type="password" data-model="userInfo.pwd" bindinput="inputWacth" />
js:
inputWacth: function (e) { let item = e.currentTarget.dataset.model; this.setData({ [item]: e.detail.value }); }