如何在Ionic2中的浏览器刷新上导航到当前页面本身



iam在Ionic2项目上工作。在那我有登录页面以及四个选项卡。首先,必须出现登录页面。

为此我放置了

rootPage:any = LoginPage

将登录页面作为根页。

它可以很好地工作。但是我的问题是在浏览器刷新,页面重新加载并导航到登录页面,而无需留在当前页面中。

我将根页面更改为当前页面名称,并且可以很好地工作。但是我有两个包含不同选项卡的模块,因此我不能在rootPage中给出特定的选项卡名称。如何在浏览器刷新上导航到当前页面?

至少您至少没有为登录页使用懒惰的加载。因此,最好的选择可能是使用DeepLinks Ionic Native插件。

deeplinks

它使您可以在形式中使用简单的路由逻辑:

this.deeplinks.route({
    '/about-us': AboutPage,
    '/universal-links-test': AboutPage,
    '/products/:productId': ProductPage
}).subscribe((match) => {
    // match.$route - the route we matched, which is the matched entry from the arguments to route()
    // match.$args - the args passed in the link
    // match.$link - the full link data
    console.log('Successfully matched route', match);
}, (nomatch) => {
    // nomatch.$link - the full link data
    console.error('Got a deeplink that didn't match', nomatch);
});

懒惰加载

如果您可以将页面变成模块,则将自动为每个页面提供以下形式的路径:

http://localhost:8100/#/my-page

在页面组件的@IonicPage()装饰器中,您甚至可以在URL中指定页面的名称和"段":

import { Component, OnInit } from '@angular/core';
import { IonicPage, NavController, NavParams, Platform } from 'ionic-angular';
@IonicPage({
    name: 'customPageName',
    segment: 'custom-path'
})
@Component({
    selector: 'page-device',
    templateUrl: 'device.html',
})
export class MyPage implements OnInit {
    // ...
}

相关内容

  • 没有找到相关文章

最新更新