1. uniapp所有页面的触发方法
在uniapp中,所有页面的触发方法都有以下几种:
1.1 onLoad
当页面加载时会触发onLoad函数,这个函数只会在页面加载时执行一次。
该函数接收一个options参数,该参数为页面跳转时携带的参数。可以使用该参数获取传递的参数。例如:
export default {
onLoad(options) {
// 获取传递的参数
const { id } = options;
console.log('id:', id);
}
};
其中,onLoad函数只在普通页面中有效,组件中不作用。
1.2 onShow
当页面每次展示都会触发onShow函数,即每次从前台进入页面都会执行。
该函数没有参数,但可以在组件中通过:getCurrentPages()[n].options获取到该页面跳转时携带的参数。例如:
export default {
onShow() {
// 获取传递的参数
const { id } = getCurrentPages()[getCurrentPages().length - 1].options;
console.log('id:', id);
}
};
在页面跳转返回时,也会触发onShow函数。可以在该函数中更新页面数据。例如:
export default {
onShow() {
// 更新数据
this.getList();
}
};
1.3 onHide和onUnload
当页面被隐藏或卸载时会触发onHide和onUnload函数,需要注意的是,当页面被隐藏时,onHide函数会先于onUnload函数触发。
这两个函数都没有参数,可以在这个函数中保存数据。例如:
export default {
onHide() {
// 保存页面数据
uni.setStorageSync('pageData', this.data);
},
onUnload() {
// 保存页面数据
uni.setStorageSync('pageData', this.data);
}
};
1.4 onPullDownRefresh和onReachBottom
当页面下拉或上拉到底部时会触发onPullDownRefresh和onReachBottom函数,需要注意的是,只有当前页面跟页面顶部距离小于50px时才会触发下拉刷新。
这两个函数都没有参数,可以在这个函数中获取新数据。例如:
export default {
onPullDownRefresh() {
// 请求新数据
this.getData();
// 停止下拉刷新
uni.stopPullDownRefresh();
},
onReachBottom() {
// 请求新数据
this.getData();
}
};
1.5 onPageScroll
当页面滚动时会触发onPageScroll函数,该函数接收一个参数,参数为页面滚动的位置信息。可以在该函数中获取当前页面滚动的位置。例如:
export default {
onPageScroll({ scrollTop }) {
// 获取当前页面滚动的位置
console.log('scrollTop:', scrollTop);
}
};
1.6 onTabItemTap
当底部tab栏被点击时会触发onTabItemTap函数,该函数接收一个参数,参数为当前被点击的tab的信息。可以在该函数中获取当前被点击的tab信息。例如:
export default {
onTabItemTap({ index, pagePath, text }) {
// 获取当前被点击的tab信息
console.log('index:', index);
console.log('pagePath:', pagePath);
console.log('text:', text);
}
};
2. 总结
uniapp所有页面的触发方法详细介绍了uniapp中所有页面的触发方法,包括:onLoad、onShow、onHide、onUnload、onPullDownRefresh、onReachBottom、onPageScroll、onTabItemTap。掌握这些方法可以更好地开发uniapp应用,并且优化用户体验。