小弟现在坐着一个项目,其中一个页面的要求如下:
页面A中有swiper,页面B中有scrollview,页面A中swiper的子项swiperitem是import页面B的scrollview,界面方面是已经实现了,现在问题是其中的事件我该如何监听,需要监听的事件及可能会发生的问题如下:
1.scrollview要实现swiper切换动态加载,加入了swiperchange事件,那么我该如何通知scrollview去获取数据?似乎只能把scrollview获取数据的方法写在界面A的js里面,但如果因为网络等数据读取速度慢,这时swiper发生切换后可能会发生数据封装错误,即可能会把属于item1的数据封装到item2里面
2.scrollview如果需要支持下拉刷新及触底加载,也可能会发生封装错误的情况,另外还得特地在数据中加入判断字段,判断scrollview的加载状态(是否正在获取数据),是否触底可以读取数据(可能服务端的数据已经获取完了),这相当麻烦
所以,我想请问是否有办法可以将页面B变成为一个单独的页面,有属于自己的生命周期,能够自行出发事件,使得其页面内scrollview的数据读取与页面A不存在联系,页面A只负责控制swiper,页面B专门控制scrollview的一切事件,包括其中scrollview子项item的点击事件
1、别用两个页面了,用这个吧,目测完全可以实现你上面的需求。
https://developers.weixin.qq.com/miniprogram/dev/component/page-container.html
https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/