小程序页面、组件与应用生命周期如何协作,怎样避免初始化竞态和资源泄漏?
简答题中等900 次浏览
参考答案与解析
# 核心结论
小程序生命周期应理解为应用、页面和自定义组件三类状态机的协作,而不是一条只执行一次的固定回调链。应用级生命周期适合处理全局启动、前后台切换和异常;页面级生命周期负责路由参数、显示、隐藏、初次渲染及卸载;组件级生命周期负责组件实例的创建、挂载、移动和移除。避免初始化竞态和资源泄漏的关键,是按照资源归属选择生命周期,让注册、暂停、恢复和清理操作具有幂等性,并且不依赖未由公开契约保证的跨层回调顺序。
# 底层机制
页面被新页面覆盖后通常可能进入隐藏状态,而不是立即卸载;用户返回时页面会再次显示,却不一定重新执行加载阶段。应用进入后台也不代表进程会一直存活,系统仍可能回收运行环境。因此,只在首次加载时刷新数据可能
