前言
想必各位大佬对wx_calendar组件也有一定的了解,本文主要讲述一下【在 bindload 事件后执行 selectComponent(’#calendar’) 操作。】的一些骚操作
一、使用场景
我们用日历组件作为一个简易的日期选择组件。例如,点击了某一天以后,就将这一天作为项目的开始日期。
那么,我们进入日历页面时,就会想设定好默认跳转到开始日期,那应该怎么做呢?
在wx_calendar的文档中,我们看到作者不希望我们在加载的时候就跳转到某一天,而是默认为今天,所以做起来会比较麻烦。
二、使用步骤
设置虚假的load函数
在wxml中,我们会配置这么一段代码
<calendar id="calendar" binddatechange="selectDate" bindload="loadDate"/>
bindload会在程序加载的时候进行执行。但是,bindload里面的函数并不一定在onReady函数之前执行完,有可能在onReady函数之后才执行完。那么,如果我们使用selectComponent(’#calendar’) 操作就会报错或者不被执行。
那么我们应该怎么做呢?
我们可以在js里面配置一段代码
loadDate(e) {
this.setDate(e)
},
setDate(e){
//真正的初始化函数
//可以在这里跳转到开始日期
}
通过这个操作,我们就可以满足,在bindload事件后,才执行selectComponent(’#calendar’)操作。
三、总结
上面这个方法也只是我投机取巧的一个小操作,正常情况应该不会报错。如果报错了,也希望开发大大能够就此场景进行补充开发,麻烦了~