当前位置: 首页 > 知识库问答 >
问题:

强制视图在ion ic2框架中重新加载

戚俊美
2023-03-14

使用Ionic框架在登录/注销时完成清除历史记录和重新加载页面后

我想知道同样的问题,但对于ionic2使用typecript。

在登录和注销时,我需要重新加载应用程序。ts,因为有些类在构造上运行库。

它基本上是重定向到家庭并重新加载。

共有3个答案

沈单弓
2023-03-14
匿名用户

您必须实现CanReuse接口,并重写routerCanReuse以返回false。然后,尝试调用路由器。renavigate()。

您的组件应如下所示:

class MyComponent implements CanReuse {
  // your code here...
  routerCanReuse(next: ComponentInstruction, prev: ComponentInstruction) { 
    return false;
  }
}

然后,当您执行登录/注销时,调用:

// navigate to home
router.renavigate()

诸嘉澍
2023-03-14

离子1

我没有使用过Ionic 2,但目前我使用的是Ionic 1.2,如果他们仍然使用ui路由器,则可以在ui sref中使用重载:true

或者您可以将以下代码添加到您的注销控制

$state.transitionTo($state.current, $stateParams, {
    reload: true,
    inherit: false,
    notify: true
});

角2

使用

$window.location.reload();

location.reload();

松兴邦
2023-03-14

在这里找到了这个答案,(请特别注意这一行this.navCtrl.setRoot(this.navCtrl.getActive())。组件) 这是我遇到的为Ionic 2重新加载当前页面的最简单解决方案

重新加载当前页面

import { Component } from '@angular/core';
import { NavController, ModalController} from 'ionic-angular';

@Component({
  selector: 'page-example',
  templateUrl: 'example.html'
})
export class ExamplePage {

  public someVar: any;

  constructor(public navCtrl: NavController, private modalCtrl: ModalController) {

  }

  refreshPage() {
    this.navCtrl.setRoot(this.navCtrl.getActive().component);
  }

}

如果您想重新加载不同的页面,请使用以下内容(注意this.navCtrl.setRoot(HomePage);

import { Component } from '@angular/core';
import { NavController, ModalController} from 'ionic-angular';
import { HomePage } from'../home/home';

@Component({
  selector: 'page-example',
  templateUrl: 'example.html'
})
export class ExamplePage {

  public someVar: any;

  constructor(public navCtrl: NavController, private modalCtrl: ModalController) {

  }

  directToNewPage() {
    this.navCtrl.setRoot(HomePage);
  }

}

 类似资料:
  • 我正在使用Ionic Framework和Cordova Sqlite构建一个移动应用程序。我正在离子列表中显示来自sqlite数据库的数据。每个离子列表项都有一个按钮,用于从数据库中删除相应的项。单击按钮,数据将从数据库中删除,但它将继续显示在离子列表中,直到我返回到其他视图并返回到它。我需要立即刷新视图,并从列表中删除该项。而且,我所有的SQL代码都在控制器中,所以我似乎还需要重新加载控制器。

  • 问题内容: 我创建了一个自定义视图(我们称之为),该视图基本上只是使用画布在其自身上绘制一些文本。使用全局变量设置要绘制的文本。 在程序执行过程中的某个时候,我想更改全局变量,并重新绘制自身以更新文本。我尝试过然后,但这无济于事。我怀疑既然内的任何内容都没有改变,它认为没有理由打电话给我。是否有任何方法可以强制视图重新绘制自身,即使它认为不需要重新绘制它呢? 问题答案: 如果我在MyView内部有

  • 问题内容: 我已经在互联网上搜寻了好几个小时了,有很多“有用的”建议……除了问题之外什么也没有。 这就是我,几乎完全是: 在Docker容器中播放框架自动加载 我正在运行Play的最新版本(我认为,不知道如何检查,但下载了<一周前)!具有Java 8的ubuntu docker容器内部的框架,使用以下dockerfile构建: 互联网上的多个来源显示出相同或相似的问题,或多或少得出了相同的结论。我

  • 本文向大家介绍angular4强制刷新视图的方法,包括了angular4强制刷新视图的方法的使用技巧和注意事项,需要的朋友参考一下 使用angular的过程中有时会出现数据已经更新了,但是对于的视图没有更新,针对这一情况,可以是用angular提供的方法强制更新视图。 这里使用NGZone来更新视图 以上这篇angular4强制刷新视图的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也

  • 问题内容: 我有一个页面正在从第三方(新闻提要)加载脚本。脚本的url在加载时动态分配(根据第三方代码)。 然后从中加载的脚本创建并加载具有新闻提要中各种内容的元素,并以漂亮的格式等将元素加载到其中(传入ID“ div1287”,以便脚本知道在何处加载内容)。 唯一的问题是,它只会加载一次。我希望它每n秒重新加载一次(从而显示新内容)。 所以,我想我会尝试一下: div清除后,我得到警报,但是没有

  • 我正在用Ionic framework开发移动应用程序。移动应用程序有一个登录页面。 登录页面后,转到另一个显示用户信息的页面。首先用户登录系统,之后用户可以看到自己的信息。但注销后,另一个用户登录到系统中,另一个用户看不到自己的信息,用户看到的是老用户的信息。如何重新加载用户信息页面? 我试图解决这样的问题; 注销时, 但这并不有效。 有其他解决方案吗?有人能帮我吗?我如何重新加载信息页面? 我