小程序面试必备:生命周期管理与页面路径获取详解

需积分: 0 0 下载量 195 浏览量 更新于2024-08-03 收藏 6KB MD 举报
在准备面试小程序开发相关职位时,了解小程序的生命周期管理至关重要。小程序提供了多层级的生命周期函数,包括应用级别的生命周期、页面级别的生命周期以及组件级别的生命周期。这些函数在不同的阶段处理着页面的加载、显示、隐藏、卸载等关键操作。 1. 应用生命周期: - `onLaunch`:在小程序启动并渲染完成后执行,仅触发一次,适合做全局初始化工作,比如网络请求、设置默认配置等。 - `onShow`:当小程序从后台切换到前台时触发,可能多次执行,用于管理和恢复用户状态。 - `onHide`:当小程序被隐藏或切换到其他页面时触发,同样可能多次执行。 - `onError`:用于捕获并处理程序运行时的错误,确保程序稳定。 2. 页面生命周期: - `onLoad`:页面首次加载时调用,获取页面路径中的参数,常用于数据预加载。 - `onShow`:页面显示或切换到前台时调用,此时可以进行页面渲染和交互设置。 - `onReady`:页面渲染完成,与视图层可以交互,适合放置DOM操作和事件绑定。 - ` onHide`:页面隐藏或切换到后台时调用,可以清理定时器等资源。 - `onUnload`:页面即将卸载时执行,如通过`redirectTo`或`navigateBack`跳转时,用于清理缓存和资源。 3. 组件生命周期: - `created`:组件实例创建时执行,用于添加自定义属性。 - `attached`:组件实例初始化完毕并加入页面节点树,适合初始化数据。 - `ready`:组件视图层布局完成,可以进行交互操作。 - `moved`:组件在节点树中位置改变时执行。 - `detached`:组件从页面节点树移除时,清理不必要的资源。 - `error`:捕获组件方法中出现的错误。 在uniapp中,获取当前页面路径可以使用`getCurrentPages()`方法获取所有打开过的页面数组,然后取最后一个元素的`route`属性得到当前页面的路径,同时通过`options`属性获取路由参数。 页面间的跳转可以通过两种方式实现: - 声明式导航:在`navigator`标签中使用`url`属性,如 `<navigator url="/新的页面路径" open-type="switchTab" />`,用于切换 tabBar 页面。 - API调用:使用`wx.navigateTo`、`wx.redirectTo`、`wx.switchTab`等官方提供的API进行页面导航,这些API会根据页面的生命周期调用相应的生命周期函数。 掌握这些知识点可以帮助开发者更好地理解和应对小程序面试中的问题,展示出对小程序开发流程和细节的深入理解。