简述在单页面应用中出现的问题
在开发过程中,项目中需要多个子页面的下拉刷新实现不同的效果,而mui的下拉刷新设置在第一次init之后,就会对后续页面进行影响,也就是说添加了一次下拉刷新之后,由于是单页面应用,就会导致整个单页面应用出现下拉刷新的功能。在这个地方有可能会出现下拉刷新的关闭语句报错。即:
mui('#pullrefresh').pullRefresh().endPulldownToRefresh(false);
this.endPulldownToRefresh(false);
这两句关闭下拉刷新的语句会报 is not a funciton;
出现报错的原因:
- 在子页面中重复设置了mui的下拉刷新
- 在子页面进行初始化mui的下拉刷新(在当前页面可以实现,跳转到另一个子页面会报错)
解决方法
- 在父页面设置,调用子页面的函数,关闭下拉刷新的语句写在父页面中;
- 在子页面设置,存储当前页面初始化中的(mui('****').pullRefresh())为全局变量进行关闭下拉刷新,并在路由跳转中存储当前子页面的函数进行调用(vue中存储当前vue对象进行函数调用)。