欢迎大家补充
1.时间
问题:判断时间是否超过今天,new Date('2022-06-10 ') < new Date(),模拟器没错,但是在iOS上居然是false。
原因:日期格式年-月-日 在ios不兼容,得先把日期转为年/月/日才行
解决办法:'2022-06-10 '.replaceAll('-', '/')
2.disableTouch
问题:写弹窗的时候,不给弹窗加disableTouch,弹窗下的区域可滑动,但是加上disableTouch,如果弹窗里需要有滑动的地方也滑不了了
原因:disableTouch禁止掉整个加disableTouch的区域的所有滑动事件
解决办法:1》加disableTouch后,在需要滑动的地方用scroll-view
2》动态设置disableTouch的值
3.flex布局
flex布局设置子元素间距,用gap、column-gap、row-gap;安卓手机不兼容
4.\n换行不起作用
在css中添加white-space: pre-line;
5.requestSubscribeMessage
wx.requestSubscribeMessage()执行了,不报错,不弹框,是因为勾选了那个不再询问了,就不会弹窗了
6.InnerAudioContext.onTimeUpdate再次调用不触发(微信小程序bug)
发生原因:由于音频加载导致 onUpdateTime 失效,(比如调用 seek的时候,触发了音频自动加载)
总结:由于使用 innerAudioContext.paused(比如:打印) 可以将onUpdateTime生效,所以只需要判断在什么情况下使用innerAudioContext.paused,由于每次音频加载完毕都会触发onCanPlay,所以加在此回调中即可
解决方案:innerAudioContext.onCanPlay(()=>{ console.log(innerAudioContext.paused) })
其它:楼上说在seek后加setTimeout(() => { console.log(innerAudioContext.paused) },100),也可以解决,由于seek后音频加载时间不固定,100毫秒内如果没有加载完毕,仍然无法触发onUpdateTime,所以加在onCanPlay中更加准确。