Ionic3运行ionic serve报错:deeplink配置存在多个player段条目
解决Ionic 3
ionic serve 中的深度链接重复段错误 这个错误原因很直接:你的项目里深度链接(Deeplink)配置中存在多个使用player作为路由段(segment)的条目,而Ionic要求每个深度链接的路由段必须是唯一的,不能重复。
按照以下步骤排查修复:
第一步:找到深度链接配置的核心位置
打开项目根目录下的src/app/app.module.ts,找到IonicModule.forRoot()的配置代码块,里面应该有deepLinks数组,这是全局深度链接的配置处。第二步:排查重复的
player段
检查deepLinks数组里的每一项,你会发现至少两个不同的页面组件,都把segment属性设置成了player。比如类似这样的错误配置:IonicModule.forRoot(MyApp, { deepLinks: [ { component: PlayerPage, name: 'Player', segment: 'player' }, { component: PlayerStatsPage, name: 'PlayerStats', segment: 'player' } // 这里重复了! ] })第三步:修复重复冲突
有两种解决思路:- 给重复的条目修改唯一的路由段:比如把上面的
PlayerStatsPage的segment改成player-stats,确保每个页面的segment值不重复; - 如果是不小心重复配置了同一个页面,直接删除多余的那一条即可。
- 给重复的条目修改唯一的路由段:比如把上面的
额外检查:页面级的深度链接配置
别忘了检查那些使用@IonicPage装饰器的页面文件,有些开发者会在页面本身配置segment属性。如果多个页面都写了@IonicPage({ segment: 'player' }),也会触发这个错误,同样需要修改成唯一值。
修复完成后,重新运行ionic serve,这个错误就应该消失了。
内容的提问来源于stack exchange,提问作者hubert
相关产品推荐
相关产品推荐

