标签:
用于定义页面的启动行为
静态声明
在 manifest 文件中页面路由信息 router.page 可增加启动模式字段 launchMode,用于声明该页面的启动模式
页面启动模式参数:
属性 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
launchMode | String | standard | 否 | 声明页面的启动模式,支持"singleTask","standard"两种页面启动模式。 标识为"singleTask"模式时每次打开目标页面都会打开已有的目标页面并回调 onRefresh 生命周期函数,清除该页面上打开的其他页面,没有打开过此页面时会创建新的目标页面实例。 标识为"standard"模式时会每次打开新的目标页面(多次打开目标页面地址时会存在多个相同页面) |
示例:
{
"router": {
"entry": "PageA",
"pages": {
"PageA": {
"launchMode": "singleTask",
"component": "index"
},
"PageB": {
"launchMode": "standard",
"component": "index"
},
"PageC": {
"launchMode": "singleTask",
"component": "index"
}
}
}
}
复制代码
打开页面的行为逻辑:
若按顺序启动 PageA -> PageB -> PageC -> PageB -> PageC -> PageA
- 打开 PageA,首次打开时页面栈为空
页面栈为PageA
- 打开 PageB,PageB 的启动模式为 standard,即在 PageA 之上新建 PageB 的页面实例并显示
页面栈为PageA,PageB
- 打开 PageC,首次打开 PageC,即在 PageB 之上新建 PageC 的页面实例并显示
页面栈为PageA,PageB,PageC
- 打开 PageB,PageB 的启动模式为 standard,即在 PageC 之上新建 PageB 的页面实例并显示
页面栈为PageA,PageB,PageC,PageB
- 打开 PageC,PageC 页面实例已存在,即销毁 PageC 之上的页面实例 PageB,回到之前打开的 PageC 的页面实例并回调此页面生命周期的 onRefresh 函数
页面栈为PageA,PageB,PageC
- 打开 PageA,PageA 页面实例已存在,即销毁 PageA 之上的页面实例 PageB 和 PageC,回到之前打开的 PageA 的页面实例并回调此页面生命周期的 onRefresh 函数
页面栈为PageA
标签: 来源:
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。