小程序冷启动时,打开的页面有以下情况
- (A 类场景)若启动的场景中不带 path
- 基础库 2.8.0 以下版本,进入首页
- 基础库 2.8.0 及以上版本遵循「重新启动策略」,可能是首页或上次退出的页面
- (B 类场景)若启动的场景中带有 path,则启动进入对应 path 的页面
# 2.1 重新启动策略
基础库 2.8.0 开始支持,低版本需做兼容处理。
小程序冷启动时,如果启动时不带 path(A 类场景),默认情况下将会进入小程序的首页。
在页面对应的 json 文件中(也可以全局配置在 app.json 的 window 段中),指定 restartStrategy
配置项可以改变这个默认的行为,使得从某个页面退出后,下次 A 类场景的冷启动可以回到这个页面。
代码示例:
{
"restartStrategy": "homePage"
}
restartStrategy
可选值:
可选值 | 含义 |
---|---|
homePage | (默认值)如果从这个页面退出小程序,下次将从首页冷启动 |
homePageAndLatestPage | 如果从这个页面退出小程序,下次冷启动后立刻加载这个页面,页面的参数保持不变(不可用于 tab 页) |
注意:即使不配置为 homePage
,小程序如果退出过久(当前默认一天时间,可以使用退出状态来调整),下次冷启动时也将不再遵循 restartStrategy
的配置,而是直接从首页冷启动。
无论如何,页面中的状态并不会被保留,如输入框中的文本内容、 checkbox 的勾选状态等都不会还原。如果需要还原或部分还原,需要利用退出状态。