Ionic2深度链接段可选参数

时间:2017-08-07 09:47:14

标签: angular deep-linking ionic3

我找不到单个文档来解释如何在段中使用可选参数。

在我的app.module.ts中,我有这个deepLinkConfig:

let deepLinkConfig = {
  links: [{
    component: HomePage, name: 'Home', segment: 'home'
  }, {
    component: ConnexionPage, name: 'Connexion', segment: 'connexion'
  }, {
    component: InscriptionPage, name: 'Inscription', segment: 'inscription'
  }, {
    component: ProfilePage, name: 'Profile', segment: 'profile/:userId'
  }, {
    component: ExplorePage, name: 'Explore', segment: 'explore'
  }, {
    component: FAQPage, name: 'FAQ', segment: 'faq'
  }]
};

...
imports: [
    ...
    IonicModule.forRoot(MyApp, {}, deepLinkConfig);
],

用户应该可以通过/profile访问其个人资料,还可以使用/profile/:userId查询其他用户的个人资料。但是当我尝试访问/配置文件时,我收到一个错误:

  

未捕获(承诺):插入无效视图

通过navCtrl,可以使用空字符串作为userId转到'profile',但是一旦你实现了页面,它就会变成空白。

有没有办法让深层链接中的参数可选?

1 个答案:

答案 0 :(得分:0)

我也曾问过这个问题here

我知道这并不是我建议的解决方案,但是目前看来唯一可用的选择是对可选参数使用虚拟值,并在您的代码中进行处理。
例如,用户将在/profile/-访问自己的个人资料,在/profile/anyOtherUser访问其他个人资料。