首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在关闭ionic 3中的模式后,setRoot()无法工作

在关闭Ionic 3中的模态框后,setRoot()方法无法正常工作的原因可能是由于模态框关闭后,页面的导航栈发生了变化,导致setRoot()方法无法正确地将页面设置为根页面。

解决这个问题的方法是使用NavController的popToRoot()方法来手动将导航栈恢复到根页面,然后再调用setRoot()方法来设置新的根页面。

以下是一个示例代码:

代码语言:txt
复制
import { Component } from '@angular/core';
import { NavController, ModalController } from 'ionic-angular';
import { HomePage } from '../home/home';

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

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

  closeModal() {
    this.navCtrl.popToRoot().then(() => {
      this.navCtrl.setRoot(HomePage);
    });
  }

}

在上面的代码中,closeModal()方法中首先调用了NavController的popToRoot()方法来将导航栈恢复到根页面,然后在回调函数中再调用setRoot()方法来设置新的根页面。

这样就可以解决在关闭模态框后setRoot()方法无法工作的问题。

推荐的腾讯云相关产品:腾讯云云服务器(CVM),腾讯云云数据库MySQL版(CDB),腾讯云对象存储(COS)。

腾讯云云服务器(CVM):提供可扩展的计算能力,适用于各种应用场景,具有高性能、高可靠性和高安全性。

腾讯云云数据库MySQL版(CDB):提供稳定可靠的云数据库服务,支持高可用、备份恢复、性能优化等功能。

腾讯云对象存储(COS):提供安全可靠的云存储服务,适用于存储和管理各种类型的数据,具有高可用性和低延迟。

更多关于腾讯云产品的详细介绍和使用方法,请访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2020-5-14-WPF的RadioButton指定groupname在window关闭后无法check

今天遇到一个神奇的WPF的RadioButton的group问题,和大家介绍下。 ---- 问题描述 英文好的同学可以直接看吕毅 - walterlv同学在github提的issue。...接着我们尝试点击未关闭的那个窗口的RadioButton,他的状态变成了checked 同时,因为binding,ViewModel的属性也变为true,使关闭的那个window(未被GC)也置为checked...接着就是问题所在了,已经被关闭的window会和还存在的window被识别为同一个GroupName的域。...验证 按照猜想,我们已经关闭的窗口的GroupName的scope会和全局的保持为同一个。 因此可以去WPF的源码看看。...欢迎转载、使用、重新发布,但务必保留文章署名黄腾霄(包含链接: https://xinyuehtx.github.io ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。

89520
  • Ionic 2 应用剖析0 开始之前1 创建一个新的Ionic 2 应用2 目录结构3. Class 定义Root Components 模版App Module总结

    0 开始之前 通过本教程之前,您应该至少了解一些基本的Ionic 2概念。您还必须已经安装了Ionic 2 在您的机器上。...为运行后续的命令,你应当将项目目录作为当前工作目录: cd ionic2-tutorial 简单瞟一眼应用效果,使用serve命令: ionic serve 上面也说了,这些命令应该在当前项目目录下执行...如果你想重复使用一个特定的功能,或有很多人工作在同一个项目中,旧的Ionic 1方法会变得非常麻烦。...根据功能组织代码的想法不是Angular 2 & Ionic 2 的特权,事实上人们在Ionic 1中使用和倡导基于特征的方式,只是大多数人没那样做(趋势是很难打破)。...= navParams.get('item'); console.log(this.selectedItem); 这就是Ionic2主从复合的基本模式了。

    4.4K50

    Ionic2 Rest 认证1、创建Ionic 2 APP2、创建服务3、创建登陆和注册页面4、登出和token检查

    ion-button block type="submit"> SignUp 4、登出和token检查 最后,在主页中添加一个退出登陆的功能...我们需要一个列表 3.获取远程数据 4.推送数据到服务器 总结 Ionic 2 中的样式与主题 Ionic 2主题简介 创建Ionic 2应用主题的方式 没有苹果电脑打包iOS平台的...插件 Ionic 和 Cordova 的误解 使用Ionic Native 使用没有包含在Ionic Native中的插件 Ionic 2 中添加图表 1....在模版中使用 总结 Ionic 2 中的创建一个闪视卡片组件 1. 创建一个新的应用作为例子 2. 什么是组件? 3. 创建组件模版 4. 创建组件类 5. 创建 CSS 动画 6....progress-bar/progress-bar.ts如下: 3.使用这个组件 总结 使用VS Code在Chrome中调试Ionic 2 优化你的Ionic2应用 打开Angular产品模式

    3.7K30

    构建具有用户身份认证的 Ionic 应用

    如果你需要开发原生功能,使用 web 技术是无法实现的,但是有些原生插件可以实现。 Ionic Native 是这些插件的精选集。 我第一次使用 Ionic 是在 2013 年底。...你可以使用 Chrome 的设备模式查看应用程序在 iPhone 6 中的效果。 ? 使用 Ionic serve 命令的特点是它会在浏览器中显示编译错误,而不是(有时会隐藏)在开发控制台。...LoginPage ], providers: [ OAuthService, ... ] }) 运行 ionic serve,确认 LoginPage在 app 首次加载后可以展示出来...你可以使用 Chrome 的设备模式查看在 iPhone 6 上的效果。 ?...你可以退出之后看一下带标识的登录页。 ? 注意: 你可能注意到退出之后标签页并没有消失。我正在查找 没有正常工作 的原因。 发布到移动设备 使用 Ionic 在浏览器中开发移动应用是非常酷的事情。

    23.8K00

    构建具有用户身份认证的 Ionic 应用

    如果你需要开发原生功能,使用 web 技术是无法实现的,但是有些原生插件可以实现。 Ionic Native 是这些插件的精选集。 我第一次使用 Ionic 是在 2013 年底。...你可以使用 Chrome 的设备模式查看应用程序在 iPhone 6 中的效果。 ? 使用 Ionic serve 命令的特点是它会在浏览器中显示编译错误,而不是(有时会隐藏)在开发控制台。...LoginPage ], providers: [ OAuthService, ... ] }) 运行 ionic serve,确认 LoginPage在 app 首次加载后可以展示出来...你可以使用 Chrome 的设备模式查看在 iPhone 6 上的效果。 ?...你可以退出之后看一下带标识的登录页。 ? 注意: 你可能注意到退出之后标签页并没有消失。我正在查找 没有正常工作 的原因。 发布到移动设备 使用 Ionic 在浏览器中开发移动应用是非常酷的事情。

    23.3K50

    【技巧】ionic3优雅解决启动前、后黑白屏问题

    原因是: 黑色背景:其实是在我们看到首页第一帧之前,看到的默认的背景色,黑、白色对应的就是黑白背景。 那解决方法是:让这个黑色的背景变成用户喜欢看到的画面或者让它透明化。...我们可以验证一下,执行命令运行看效果: ionic run android 2、启动后黑白屏 ionic启动页使用了cordova-plugin-splashscreen这个插件,插件配置在应用的config.xml...(SplashScreenDelay)显示,延时时间到就关闭,这样就会出现一个bug: 延时时间短,应用资源未加载完成,在dialog关闭后到首页显示这段过程中就会显示黑屏。...2)一直显示,直到应用加载完成后调用关闭 打开config.xml,主要添加或修改下面语句即可: 的区别其实是AOT(Ahead-of-time,提前编译)和JIT(Just-in-time,即时编译)的区别,使用参数后使用AOT,若代码存在不规范的地方,如缺文件使得应用报错而无法启动

    3.6K60

    使用Ionic2开发Todo应用0 开始之前1 创建新的Ionic 2工程2. 设置主页(Home page)3 持久化数据保存4 总结

    已经在电脑上安装了Ionic 2。如果没有,先去安装和学习吧。 1 创建新的Ionic 2工程 我们将通过生成一个基于“空白”模板的新项目开始。这是一个空的项目框架,但有一些示例代码供我们使用。...如果你不适应 TypeScript,并感到困惑,那也不用担心——你可以把类型抛开,您的应用程序仍然会工作的很好。我不会在本教程中使用类型,除了依赖注入是不可替代的地方(我们将稍后介入)。...这就是Ionic 2 的依赖注入工作模式,基本上是一种方式告诉应用程序“我们希望通过navCtrl引用到NavController”。通过添加公共关键字在它面前,它会自动创建一个成员变量。...我们还有另一个按钮指向一个close方法——因为这个页面作为一个Mode模式的页面,我们希望能把页面关闭,所以我们也会在add-item-page.ts定义这个方法。...除此之外,我们创建了saveItem函数来创建newItem对象,它使用当前的标题和描述值(即我们建立双向数据绑定,无论用户输入什么),然后我们关闭视图,同时我们也传入了newItem在dismiss方法中

    6.1K50

    Ionic2 坑の补充

    写在前面的话: 最近把玩了微信小程序过后,由于对它专属的IDE使用不当,导致在退出关闭计算机的时候没有及时清理缓存,造成缓存碎片留藏在硬盘的分页文件内,导致硬盘无法reboot...【注:博主这次使用的是国内镜像】 1、ionic2创建项目的坑: 这是在使用ionic start xxx --v2 的时候下载好对应的目录的同时,在项目建成的最后,会显示如下的错误提示...: ionic start无法生成项目.png 这样的错误博主之前从未遇到,一时间慌了神,再紧接着去查看项目log: 错误log.png 于是博主积极的百度与谷歌,想弄清楚问题的原因...install对应的zip包,同样,在MAC上也出现一样的问题,甚至连ionic本身都安装不了,都是需要用户权限进行进一步的解压,下载,保存处理。...4、关于cordova版本的坑:在新的node版本下,cordova已经更新到6.5.0版本,这个时候在ionic 项目创建的时候系统会提示: ionic运行时提示.png

    1.6K20

    用Ionic开发hybrid APP

    而且私以为在目前激烈而又变化快速的移动APP市场环境下,用phonegap来开发APP未尝不是一种低成本mvp的方案,快速发布,成王败寇^-^ 为什么选用ionic 其中ionicframework便是...APP都知道,使用表单时键盘的弹起/关闭中会引来很多问题,Ionic之前的方案都是js实现,效果实难恭维,上述插件以原生代码的方式来优化这个问题,亲测效果很好,也强烈推荐你使用这个插件。...数据库,或者更甚者请求服务器)就需要自定义启动图片的关闭,那么就需要安装这个插件,否则就又会在启动时候有屏幕闪动的影响体验的问题。...需要提示的是,安装插件后,在启动图片未关闭时候,默认菊花转在屏幕中间,如果你要自定义,可以更改插件中的原生代码,以iOS为例,将其改到屏幕底部:更改/src/ios/CDVSplashScreen.m中...中的TouchID也可以在hybrid APP中使用了,$cordovaTouchID 上述推荐仅仅是自己在开发Hipo的一点经验之谈,还是建议需得根据自己APP实际情况选用自己需要的插件。

    2.4K10

    RSSHelper正式开源

    另外,对于没有提供RSS的网页,也没有办法订阅,所以决定自己搓一个: 抓取展示RSS最新10条(包括目录摘要和post内容) 夜间模式(当时经常在晚上看) 当时会点安卓,偷懒采用安卓壳包着WebView...XML解析,用jsoup 线程通信(抓取HTML和RSS并解析的过程在子线程) 跨域,由安卓来请求,绕过去了 安卓与JS双向通信(包括JS接口注入和WebView历史栈管理) 靠这样一个很弱的玩具找到了第一份实习工作...,ionic开发遇到了更多问题,而且更难解决,很多奇怪的问题无法定位,只能google 四.PHP服务更新 simplexml_load_file原生模块很脆弱,遇到不合法的XML/HTML就报错,而且从...DiDom,基本稳定 结构也做过拆分重构: 引入Composer模块管理器 把HTML解析规则配置化 但奇舞周刊,FEX周刊之类的feed无法解析,在PHP生态没有找到更好的RSS解析方案 五.服务迁移至...定时抓取 服务端内存缓存 服务功能还比较简单,但目前抓取部分算是稳定了 六.打包iOS真机安装 安卓打包发布在之前有说过:ionic开发跨平台App常见问题,环境要求比较麻烦 iOS打包需要OSX环境以及

    2K50

    SNS项目笔记--项目启动

    摘要:全新SNS项目启动,现ionic更新到了3.0版本,angular更新到了4.0版本,博主随着这项目,带着大家领略一番ionic的相关技术细节上的问题 1、全新项目下载操作: 在新版本下,ionic...统一化环境后即可开始我们的项目构建。...F12进行真机模拟查看,并且默认为极速模式【特别注意,千万不要将自己的浏览器设置为IE兼容,不然看不出效果】 1.1.3、build与打包 ionic cordova platform add android...2、新增一个导航界面 在项目进行中要进行对底部导航栏目的修改,在项目中默认为三个导航,可是项目需求需要四个,我们需要ionic g page newPage//这里的newPage为我们开发人员自定义的名称自动生成页面...改变点击色.png 4、结尾的话 作为公司项目此项目不应开源,但是我会在项目进行中将比比较精华的部分分享给大家,希望同路人喜欢上这样的UI框架,也希望ionic 在今后能改变我们大部分的工作方式!

    2.9K20

    第十五章 系统服务管理

    另,初学者对此文件会比较难以理解,可以暂时滞后,在入行的初期,使用较少,可以等有了一定的工作经验,并对Linux系统、内核、shell编程等方面有了一定的理解后再做研究,在此也不介绍太多,以免扰乱大家的思路...在还未关闭系统时,直接输入本命令,即可恢复了。...15.4.2 默认启动级别修复 若Linux系统备份恶意更改,改开机级别为reboot.target或hat.target,则开机后会立即重启或关闭,则无法正常启动系统。...操作思路: 按Linux的启动顺序,在加载完内核后,会读取/etc/fstab挂载各文件系统,则/etc/passwd和/etc/shadow便可读取并做验证了,我们需要做的是,在Linux加载完内核后...,立即停止/etc/fstab的读取,即停止挂载文件系统,而让系统转入到内核中的精简shell,即sh中(因为正常的shell,即/bin/bash是在验证登录成功后才可启用),这样就无法读取/etc/

    1.8K51

    Vue+Ionic4,知虎偏行(二)创建及配置项目

    envt-iot-overall npm i npm run serve 此时可以看到项目能正常运行的,一般来说,应用都需要和路由打交道,所以添加下路由: vue add router 安装Ionic依赖...安装ionic相关依赖(其中@ionic/core是组件部分,@ionic/vue是封装成Vue方式调用的接口部分): npm i @ionic/core @ionic/vue 安装完成后,在main.js...important; } 此时页面看到有东西了,那我们尝试下ionic的组件能不能用,在Home.vue页面添加一个按钮: 测试Ionic的路由和使用其动画和样式,@ionic/vue里在vue-router的基础上做了封装,所以处理一下,打开router.js,修改一下(把Router替换为IonicVueRouter...修改模式 众所周知,Ionic默认是使用android/md(Material Design)模式的,如果想使用ios模式,在上添加mode="ios",即: <html lang="en"

    4.3K41

    「非广告」从外包到字节,大佬的成长秘密

    终于,在一个半小时的访谈后,我找到了答案。这个答案适合有志在软件领域发展的同学借鉴。 历练驱动型发展模型 当谈到如何成长时,文强提出了上述这个略显拗口的名词。...当时,有人在群里问「Ionic的私活,谁来接?」。 如果你是文强,作为一款框架的初学者,会作何反应?反正如果是我,我会想:我是来学Ionic的,水平太菜,肯定没法胜任私活。...但文强的思路是:居然有人付费给我提供一个学习Ionic的机会,赶紧抓住。 我问他:如果你接了后发现无法胜任怎么办? 他说:那就再找会的人外包出去呗,反正怎么都不会赔。...最终,通过这个项目的历练,他不仅获得了Ionic的实际项目经验,还在一个月时间赚了4w。 这,就是「历练」。 很多同学很勤奋,在日常工作之余还会买各种前端课程学,这是历练么? 很遗憾,大概率不是。...有同学会问:除了接外包,在日常工作中如何获得历练的机会呢? 文强给出了他的答案。 写好自己的开发纪要 在每天工作结束后,文强都会总结今天的「开发纪要」。 听到这个名字时,我第一反应是 —— 写日报?

    58030

    ionic cordova resources问题说明

    ionic cordova resources是用于一键打包生成各分辨率icon和splash的命令,在使用过程中可能会遇到以下问题: 1....无法上传图片且报POST404 很早以前此命令是不用账号就能使用的,现在使用需要先登录,登录过后就能长期不再登录,然而最近可能出现已登录的不能使用,未登录的登录不上的情况,见下面内容: ?...此时应该在配置中通过backend来配置使用pro而不是legacy,敲入以下命令即可: ionic config set backend pro -g 可能会第一次设置成功后仍然登录失败的情况(莫名其妙的...Bug),这时可以回滚回legacy后再切换到pro: ionic config set backend legacy -g ionic config set backend pro -g 备注说明 参考自下面链接...无法上传图片 先检查图片格式是否正确且像素尺寸合理、文件不要太大,然后重试一两次。

    1.3K20
    领券