发布网友 发布时间:2022-04-26 23:03
共2个回答
热心网友 时间:2022-04-19 05:54
bindChange 为输入框发生改变事件。微信提供的 bindchange 在支持方面还有小问题,目前是失去焦点才能触发到此事件的发生。
如果在 bindchange 的事件回调函数中使用 setData 改变 current 值,则有可能导致 setData 被不停地调用,因而通常情况下请在改变 current 值前检测 source 字段来判断是否是由于用户触摸引起。
swiper里加了bindchange事件,有很多个swiper-item,连续快速切换swiper-item触发bindchange事件,小程序会出现一直无限触发bindchange事件。请检查是否在change事件中使用setData改变current值,请避免该操作。
扩展资料
bindchange 是 swiper 组件的属性之一,类型为 eventhandle 。
current 改变时会触发 change 事件,event.detail = {current, source}。当滑块的current改变时会触发该事件并执行绑定的方法。
swiper组件是小程序中使用频次最高的组件之一,属于视图容器类组件,它通过对自身属性进行简单配置就可以实现在前端开发中要写很多代码才能完成的轮播图效果。
参考资料:微信官方文档 - swiper
热心网友 时间:2022-04-19 07:12
swiper中的事件,左右滑动的时候,滑动结束会出发这个事件。
bindfocus: 指当我们的输入框获得焦点时触发,也就是鼠标或者手指点击到输入框时。 bindblur: 指输入框失去焦点是触发,也就是当我们敲击回车或手机上的完成又或者是点击屏幕上的空白处时触发。
bindchange: 这个事件官方文档中没有写,它的效果和bindblur一样,至于看名字我们可能觉得bindchange在输入框中的内容不改变时不会触发,但是亲测即使内容不改变,bindchange事件也一样会触发。
bindinput: 没输入一个字符都会进行一次检索,通常用于实时检索。但是这种方法对数据库的要求较高。
在bindblur或bindchange事件中我们通过event.detail.value获得swiper中的事件,左右滑动的时候,滑动结束会出发这个事件。