不积跬步,无以至千里;不积小流,无以成江海。

Dean's blog

  • Join Us on Facebook!
  • Follow Us on Twitter!
  • LinkedIn
  • Subcribe to Our RSS Feed

小程序实现双向绑定

 WXML:

<input  data-name="currentStoreClassify.Name" bindinput="inputChange"  value="{{currentStoreClassify.Name}}" type="text" class="text" placeholder="请输入分类名称" />

其中:

data-name      是需要绑定的字段或对象的属性
bindinput        当输入内容后,触发的事件,实现双向绑定的主要方法

JS:

inputChange: function (event) {
    var dataset_name = event.currentTarget.dataset.name;
    var view_name = event.detail.value;

    var ps = dataset_name.split('.');
    if (ps.length == 1) {
      this.setData({
        [dataset_name]: view_name    // worker: input框输入的值
      })
    } else {
      var data = this.data[ps[0]];
      var temp = data;
      for (var i = 1; i < ps.length - 1; i++) {
        temp = temp[ps[i]];
      }
      temp[ps[ps.length - 1]] = view_name;
      this.setData({
        [ps[0]]: data    
      })
    }
  }

 

不允许评论
粤ICP备17049187号-1